User defined Function in SQL

1,458 views 21 slides Aug 20, 2013
Slide 1
Slide 1 of 21
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21

About This Presentation

User defined Function in SQL


Slide Content

Disclaimer: This presentation is prepared by trainees of baabtra as a part of mentoring program. This is not official document of baabtra –Mentoring Partner Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt . Ltd

Week Target Achieved 1 ------- 15wpm 2 3 Typing Speed

Jobs Applied # Company Designation Applied Date Current Status 1 2 3

User Defined Functions In SQL Sandeep.v [email protected] www.facebook.com/sandeep.narayan.73 twitter.com/username in.linkedin.com/in/ sandeep v 9447532678

What is UDF? User defined functions are similar to ordinary functions found in programming languages. The main purpose of UDF is code reusability.

Benefits of using UDF Modular programming. Faster execution. Code reusability.

User defined functions can be passed input parameters User defined functions are compiled and executed at runtime so pretty slower than stored procedures UDF can’t perform DML (data manipulation language) operations like Insertion, Update and Deletion on the base table UDF can’t return non deterministic values like GETDATE () etc Stored procedure can’t be called from inside a UDF whereas a stored procedure can call a user defined function or another stored procedure inside it

Types of UDF… Scalar functions Returns a single value Inline functions Returns a table Table values functions  Multiple operations, complex logic just like Stored procedures

FORMAT OF A UDF CREATE FUNCTION dbo.function_name ( @parameter1 datatype = default value, @parameter2 datatype ) RETURNS datatype AS BEGIN sql statements foms function body ... RETURN value END

SCALAR FUNCTION CREATE FUNCTION dbo.teach_name (@ teachr_id int ) RETURNS varchar (20) AS BEGIN Declare @ returnvalue varchar (20) Select @ returnvalue = teacher_name from tbl_teachers where teacher_id =@ teachr_id RETURN @ returnvalue END Execution: select dbo.teach_name (1002)as teacher_name

INLINE FUNCTION CREATE FUNCTION dbo.list_teach (@name varchar (10)) RETURNS TABLE AS RETURN SELECT * FROM tbl_teachers where teacher_name like '%'+@name+'%' Execution: select * from dbo.list_teach (' i ')

Table values functions CREATE FUNCTION udf_teach_day () RETURNS @Result TABLE ( vchr_teacher_name varchar (20) , vchr_day varchar (10) ) AS BEGIN INSERT INTO @Result ( vchr_teacher_name,vchr_day ) select teacher_name,datepart ( dw,teacher_doj )as vchr_day from tbl_teachers UPDATE @Result SET vchr_day = 'weekday' where vchr_day <>cast(2 as varchar (20)) UPDATE @Result SET vchr_day = ' monday ' where vchr_day =cast(2 as varchar (20)) RETURN END

Execution:Select * from udf_teach_day ()

Conclusion UDF are similar to functions in the programming languages, they provide a mechanism for extending the functionality of the database server  by adding a function that can be evaluated in SQL statements.

If this presentation helped you, please visit our page  facebook.com/ baabtra  and like it. Thanks in advance .    www.baabtra.com  |  www.massbaab.com  | www.baabte.com

Contact Us Emarald Mall (Big Bazar Building) Mavoor Road, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 NC Complex, Near Bus Stand Mukkam , Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 Start up Village Eranakulam , Kerala, India. Email: [email protected]