Scalar-Valued Function Membuat UDF

PERANCANGAN DATA BASE SISTEM INFORMASI MANAJEMEN PENDIDIKAN DENGAN DBMS MICROSOFT ACCES DAN SQL SERVER 122 Pada contoh kali ini akan dibuat SVF untuk mendapatkan nilai pada kolom field baru yang dihasilkan dari perkalian dua kolom. Dua kolom ini dapat ditentukan secara langsung saat eksekusi SVF. Gambar 5.45: Fungsi subtotal Fungsi subtotal di atas digunakan untuk menampilkan hasil kali dua kolom yang di-parsing melalui parameter qty dan price. Fungsi ini mengembalikan nilai bertipe data float. Gambar 5.46: Proses dan hasil eksekusi fungsi subtotal Perintah SQL di atas merupakan contoh eksekusi SVF yang telah dibuat, yaitu fungsi subtotal. Karena pemanggilan fungsinya PERANCANGAN DATA BASE SISTEM INFORMASI MANAJEMEN PENDIDIKAN DENGAN DBMS MICROSOFT ACCES DAN SQL SERVER 123 subtotalquantity, price maka hasil yang dikembalikan berupa hasil perkalian dari kolom quantity dan price.

5.7.3 Multi-Statement Table-Valued Function

Secara umum multi-statement table-valued function disingkat MTVF mirip dengan inline table-valued function ITVF, perbedaanya hanya pada poin-poin berikut ini.  Variabel table yang akan dikembalikan oleh fungsi harus didefinisikan di awal fungsi.  MTVF harus mempunyai blok BEGINEND.  Di dalam blok BEGINEND harus ada kode yang menghasilkan variabel table.  MTVF harus mengembalikan nilai.  ITVF hanya mengembalikan statemen SELECT, tidak ada variabel table di dalamnya, tidak ada statemen INSERT, dan tidak ada blok kode. Skrip berikut ini merupakan sintaks umum MTVF. CREATE FUNCTION Table_Function_Name, sysname, FunctionName -- Add the parameters for the function here param1, sysname, p1 data_type_for_param1, , int, param2, sysname, p2 data_type_for_param2, , char RETURNS Table_Variable_Name, sysname, Table_Var TABLE -- Add the column definitions for the TABLE variable here Column_1, sysname, c1 Data_Type_For_Column1, , int, Column_2, sysname, c2 Data_Type_For_Column2, , int AS BEGIN -- Fill the table variable with the rows for your result set RETURN END PERANCANGAN DATA BASE SISTEM INFORMASI MANAJEMEN PENDIDIKAN DENGAN DBMS MICROSOFT ACCES DAN SQL SERVER 124 Untuk contoh MTVF akan digunakan contoh yang telah dibahas pada ITVF dengan sedikit modifikasi. Gambar 5.47: Fungsi insCrossTable Fungsi insCrossTable di atas digunakan untuk menampilkan data dari tabel dbo.products untuk selanjutnya data hasil SELECT tersebut disisipkan insert ke dalam tabel baru. Gambar 5.48: Proses dan hasil eksekusi fungsi insCrossTable Perintah SQL di atas merupakan contoh eksekusi MTVF yang telah dibuat, yaitu fungsi insCrossTable. Karena pemanggilan fungsinya ditambahkan klausa WHE‘E a a LIKE LG maka hasil yang dike alika erupa data produk ya g e ga du g kata LG . Data yang dikembalikan oleh fungsi insCrossTable ini selanjutnya disisipkan ke dalam tabel baru dengan nama produkLG. Gambar 5.48 kanan menunjukkan terciptanya tabel baru dengan nama dbo.produkLG hasil eksekusi fungsi insCrossTable.

5.8 Membuat Trigger

Trigger merupakan sebuah bentuk khusus dari stored procedure yang secara otomatis melakukan eksekusi ketika sebuah event terjadi di