Creating User Defined Table Value Function

Created at : Dec/22/2009  
837 Views   0 Comments

Pada artikel sebelumnya saya sudah membahas tentang User Defined Function, jenis-jenisnya dan contoh pembuatan User Defined Scalar Value Function. Artikel tersebut dapat dilihat disini : Creating User Defined Scalar Value Function

Kali ini saya akan membahas User Defined Table Value Function. Fungsi tersebut akan mengembalikan nilai berupa table yang berisi record-record dari hasil eksekusi query yang didefinisikan didalam fungsi tersebut.

Pada contoh kali ini saya akan membuat sebuah fungsi yang akan mengembalikan record berupa data Employee dengan informasi OrderID, OrderDate, ProductName dan Quantity yang pernah ditangani oleh employee bersangkutan. Database yang digunakan yaitu Northwind yang telah saya masukkan ke dalam SQL Server 2008.

Berikut langkah-langkahnya :

1. Ketikkan script berikut ini didalam database Northwind dan eksekusi di SQL Server Management Studio :

CREATE Function GetEmployeeOrders
--input parameter EmployeeID :
(@empid int)

--return value berupa table :
Returns Table

AS
Return
(
Select e.FirstName, o.OrderID, o.OrderDate, p.ProductName, od.Quantity
From Employees e
Inner Join
Orders o On e.EmployeeID = o.EmployeeID
Inner Join
[Order Details] od On o.OrderID = od.OrderID
Inner Join
Products p On od.ProductID = p.ProductID
Where e.EmployeeID = @empid
)

Perintah yang mendefinisikan Table Value function yaitu perintah Returns Table. Setelah itu query nya di buat didalam perintah Return setelah perintah As.

2. Setelah sukses dieksekusi maka fungsi tersebut akan muncul di folder database yang anda gunakan, gambarnya dapat dilihat dibawah ini :

 

3. Eksekusi fungsi tersebut dengan menjalankan perintah Select dan masukkan input berupa nilai EmployeeID :

 

Perintah Select untuk menjalankan Table Value Function sama seperti yang biasa dilakukan pada perintah Select DML umumnya terhadap sebuah table, namun perbedaannya yaitu kita dapat langsung memberikan input parameternya ke dalam fungsi tersebut.  Dari gambar diatas dapat kita lihat hasil eksekusi fungsi tersebut berupa record-record. Tentunya anda dapat melihat perbedaan antara scalar value dan table value function.

 


[Comments]

[Write your comment]
Name (required)
URL (optional)
Example : http://www.yulianmf.com  
Comment

5184
Input code above below (Case Sensitif) :
About Me 
Rully Yulian MF
My Name is Rully Yulian Muhammad Firmansyah. I am an IT Trainer, IT Consultant and Application Developer spesializing in Microsoft .NET technology and SQL Server database. I live in Bandung, Indonesia. My hobby is to play Guitar. [Read More...]
Top Download 
Bagaimana caranya menginstal database ketika deploying sebuah aplikasi? : Downloaded 2235 times  
Change Group,Sort Order, Filtering By Date in Crystal Reports : Downloaded 2192 times  
Simple Voice Engine Application With Sound Player Class... : Downloaded 1523 times  
DataGridView Grouping : Downloaded 1243 times  
WinForms DataGrid Paging With SqlDataAdapter : Downloaded 1232 times  
Article Category 
Links 
Award 
Certifications 
MOS 2007
MCAS
MCT
MCPD
MCTS
MCAD.NET
ASP.NET Brainbench
Native Enterprise - IT Training 
Native Enterprise Facebook Group 
My Facebook 
My LinkedIn 
Syndication (RSS 2.0) 
Powered By 
Native Enterprise News