在SQL中使用游标@@fetch_status函数

@@FETCH_STATUS 系统函数

@@FETCH_STATUS 系统函数用于查找最近的 FETCH 语句。 您可以将此函数与 while 循环一起使用。 @@FETCH_STATUS 系统函数返回 0 或者 1。返回 0 表示 FETCH 成功且等于 0。 当它返回 1 时,表示 FETCH 不成功并且等于 1。

用于创建 billtbl 表的语句

create table billtbl

(
billid int not null identity primary key,
vendorid int not null,
billno varchar(15),

billtotal money,
paymenttotal money,
creadittotal money
)

用于在billtbl表中插入数据的语句

insert into billtbl values (20,'e001',100,100,0.00)
insert into billtbl values (21,'e002',200,200,0.00)
insert into billtbl values (22,'e003',500,0.00,100)

insert into billtbl values (23,'e004',1000,100,100)
insert into billtbl values (24,'e005',1200,200,500)

在billtbl表中显示数据的语句

select * from billtbl

用于创建vendors表的语句

create table vendors
(
vendorid int,

vendorname varchar(15),
vendorcity varchar(15),
vendorstate varchar(15)
)

用于在vendors表中插入数据的语句

insert into vendors values (20,'vipendra','noida','up')
insert into vendors values (21,'jack','lucknow','up')
insert into vendors values (22,'rahul','kanpur','up')

insert into vendors values (23,'malay','Amsterdam','Amsterdam')
insert into vendors values (24,'mayank','noida','up')

在vendors表中显示数据的语句

select * from vendors

用于创建游标的语句

declare cur_bill cursor

global static

for

select vendorname,vendorcity,billtotal

from vendors join billtbl

on vendors.vendorid=billtbl.vendorid

用于打开游标的语句

open cur_bill

使用@@ fetch_status系统函数

fetch first from cur_bill
while @@FETCH_STATUS = 0
begin
	fetch next from cur_bill
end
日期:2020-06-02 22:17:57 来源:oir作者:oir