Kursor Dinamis dapat diperbarui. Kursor dinamis akan mengambil perubahan (menyisipkan, memperbarui, atau menghapus) pada setiap pengambilan saat kursor terbuka jika ada modifikasi yang terjadi pada data asli dalam tabel. Jenis Kursor ini berguna ketika kita ingin mengekstrak record dari tabel asli saat kursor terbuka dan kita masih dalam proses modifikasi data atau menyisipkan record baru dan ingin memasukkannya ke dalam hasil kursor yang disetel untuk melakukan operasi.
Kursor dinamis dapat digulir (Pertama, Terakhir, Sebelumnya, Berikutnya, Relatif) tetapi mutlak opsi tidak bekerja dengan Kursor dinamis.
Skrip untuk Kursor Dinamis di SQL Server juga digunakan dalam video.
--drop table dbo.Customer Create table dbo.Customer ( CustomerId Int Identity(1,1), CustomerName VARCHAR(100), StreetAddress VARCHAr(100), City VARCHAR(100), State CHAR(2)) go --Insert couple of Records in Sample Table Insert into dbo.Customer Select 'Aamir shahzad','Test Street Address','Charlotte','NC' Union Select 'M Raza','Test Street Address','Charlotte','NC' Select * from dbo.Customer --Insert NEW Record Insert into dbo.Customer Select 'John Smith','Test Street Address','New York City','NY' --Delete Records Delete from dbo.Customer Where CustomerName in ('Aamir Shahzad','M Raza') --Update All Record Update dbo.Customer set CustomerName='NO NAME' --Cursor Script Declare @CustomerID INT Declare @CustomerNAme VARCHAR (100) DECLARE @StreetAddress VARCHAR(100) DECLARE @City VARCHAR(100) DECLARE @State CHAR(2) --DECLARE A CURSOR DECLARE CUR CURSOR DYNAMIC FOR Select CustomerID,CustomerName,StreetAddress,City,State from dbo.Customer --OPEN CURSOR OPEN CUR Print 'CURSOR IS OPEN' --FETCH NEXT RECORD FETCH NEXT FROM CUR INTO @CustomerID,@CustomerNAme,@StreetAddress,@City,@State WHILE @@FETCH_STATUS=0 BEGIN RAISERROR ('',0,1) WITH NOWAIT WAITFOR DELAY '00:00:15' PRINT CONCAT(@CustomerID,' ',@CustomerNAme,' ',@StreetAddress,' ',@City,' ',@State) FETCH NEXT FROM CUR INTO @CustomerID,@CustomerNAme,@StreetAddress,@City,@State END CLOSE CUR DEALLOCATE CUR
Silakan tonton video Demo Detail Kursor Dinamis di SQL Server.