Tabled Value Parameter
Tabled Value Parameter merupakan tipe data yang dibuat oleh user Tabled Value Parameter digunakan untuk mengirimkan multiple rows data Dapat digunakan dalam stored procedure sebagai parameter
Langkah-langkah pembuatan Buat TABLE TYPE dan tentukan struktur table Deklarasikan suatu stored procedure yang mempunyai parameter bertipe TABLE TYPE. Deklarasikan variabel yang bertipe TABLE TYPE dan referensikan ke TABLE TYPE. Gunakan perintah INSERT dan isi variabel variable sudah dapat dipanggil ke procedure.
contoh Membuat table bagian dan menggunakan variabel tabel untuk proses pengisian data CREATE TABLE bagian ( kodeBagian char(2) PRIMARY KEY, namaBagian VARCHAR(30) )
Buat TABLE TYPE dan tentukan struktur table CREATE TYPE BagianType AS TABLE ( kodeBagian char(2), namaBagian VARCHAR(30) )
Deklarasikan suatu stored procedure yang mempunyai parameter bertipe TABLE TYPE CREATE PROCEDURE BagianType READONLY AS INSERT INTO Bagian(kodeBagian,namaBagian) SELECT *
Deklarasikan variabel yang bertipe TABLE TYPE dan referensikan ke TABLE TYPE AS bagianType INSERT VALUES (1,‘gudang'), (2,‘adm'), (3,’keamanan'), Gunakan perintah INSERT dan isi variabel
variable sudah dapat dipanggil ke procedure EXEC
CURSOR DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ] [ FORWARD_ONLY | SCROLL ] [ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ] [ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ] [ TYPE_WARNING ] FOR select_statement [ FOR UPDATE [ OF column_name [,...n ] ] ] [;]
Contoh: Menampilkan isi tabel bagian -- deklarasi variabel -- deklarasi cursor DECLARE Bag_CURSOR CURSOR FAST FORWARD FOR SELECT kodebagian, namabagian FROM bagian
--Membuka kursor OPEN Bag_CURSOR -- mengambil nilai pertama di cursor FETCH NEXT FROM Bag_CURSOR INTO
-- Mengambil nilai berikutnya WHILE = 0 BEGIN PRINT ‘Kode Bagian : ‘ PRINT ‘Nama Bagian : ‘ FETCH NEXT FROM Bag_CURSOR INTO END
-- menutup CURSOR CLOSE Bag_CURSOR -- mendealokasi CURSOR DEALLOCATE Bag_CURSOR