You are on page 1of 4

Dimara Kusuma Hakim, S.T., M.Cs.

Siapkan dulu tabel


percobaannya

CREATE TABLE Z
(
kode int,
makanan varchar(50)
);
INSERT INTO Z (kode, makanan) VALUES (1, 'Soto');
INSERT INTO Z (kode, makanan) VALUES (2, 'Bakso');
INSERT INTO Z (kode, makanan) VALUES (3, 'Bakmoy');

Uji coba dulu query-nya

SELECT kode, makanan


FROM Z

Membuat Cursor

DECLARE @hasil varchar(50);


DECLARE @v_kode int;
DECLARE @v_makanan varchar(50);

DECLARE Cursor_Z CURSOR FOR


SELECT kode, makanan
FROM Z; -- membuat cursor

SET @hasil = ''; -- var hasilnya diisi dulu, supaya enggak NULL
OPEN Cursor_Z; -- membuka cursor
FETCH NEXT FROM Cursor_Z INTO @v_kode,@v_makanan; --ambil nilai pertama dari cursor
-- gunakan looping untuk mengakses cursor
WHILE @@FETCH_STATUS = 0
BEGIN
SET @hasil = @hasil + @v_makanan
FETCH NEXT FROM Cursor_Z INTO @v_kode, @v_makanan; -- ini utk next di cursor
END;
SELECT @hasil; -- menampilkan hasil, tidak harus SELECT (bisa UPDATE,INSERT,DELETE)
CLOSE Cursor_Z; -- menutup cursor
DEALLOCATE Cursor_Z; -- menghapus cursor dari memori

You might also like