Mega Code Archive

 
Categories / MSSQL / Cursor
 

A SQL script that declares and uses a cursor

18> create table Bankers( 19>    BankerID             Integer, 20>    BankerName           VARCHAR(20), 21>    BankerContactLName   VARCHAR(20), 22>    BankerContactFName   VARCHAR(20), 23>    BankerCity           VARCHAR(20), 24>    BankerState          VARCHAR(20), 25>    BankerZipCode        VARCHAR(20), 26>    BankerPhone          VARCHAR(20) 27> ) 28> GO 1> 2> insert into Bankers values (1, 'ABC Inc.','Joe','Smith','Vancouver','BC','11111','111-111-1111'); 3> GO (1 rows affected) 1> insert into Bankers values (2, 'DEF Inc.','Red','Rice', 'New York', 'DE','22222','222-222-2222'); 2> GO (1 rows affected) 1> insert into Bankers values (3, 'HJI Inc.','Kit','Cat',  'Paris',    'CA','33333','333-333-3333'); 2> GO (1 rows affected) 1> insert into Bankers values (4, 'QWE Inc.','Git','Black','Regina',   'ER','44444','444-444-4444'); 2> GO (1 rows affected) 1> insert into Bankers values (5, 'RTY Inc.','Wil','Lee',  'Toronto',  'YU','55555','555-555-5555'); 2> GO (1 rows affected) 1> insert into Bankers values (6, 'YUI Inc.','Ted','Larry','Calgary',  'TY','66666','666-666-6666'); 2> GO (1 rows affected) 1> insert into Bankers values (7, 'OIP Inc.','Yam','Act',  'San Franc','FG','77777','777-777-7777'); 2> GO (1 rows affected) 1> insert into Bankers values (8, 'SAD Inc.','Hit','Eat',  'Orland',   'PO','88888','888-888-8888'); 2> GO (1 rows affected) 1> insert into Bankers values (9, 'DFG Inc.','Sad','Lee',  'Wisler',   'PL','99999','999-999-9999'); 2> GO (1 rows affected) 1> insert into Bankers values (0, 'GHJ Inc.','Bit','Lee',  'Ticker',   'MN','00000','000-000-0000'); 2> GO (1 rows affected) 1> 2> DECLARE Bankers_Cursor CURSOR 3> STATIC 4> FOR 5>     SELECT BankerID, BankerName 6>     FROM Bankers 7>     ORDER BY BankerName 8> OPEN Bankers_Cursor 9> FETCH NEXT FROM Bankers_Cursor 10> WHILE @@FETCH_STATUS = 0 11>     FETCH NEXT FROM Bankers_Cursor 12> CLOSE Bankers_Cursor 13> DEALLOCATE Bankers_Cursor 14> GO BankerID    BankerName ----------- --------------------           1 ABC Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           2 DEF Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           9 DFG Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           0 GHJ Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           3 HJI Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           7 OIP Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           4 QWE Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           5 RTY Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           8 SAD Inc. (1 rows affected) BankerID    BankerName ----------- --------------------           6 YUI Inc. (1 rows affected) BankerID    BankerName ----------- -------------------- (0 rows affected) 1> 2> 3> drop table Bankers; 4> GO 1>