我在存储过程中使用游标:为什么第一次可以,第二次就不行了,再过一会儿就又可以了。
CREATE PROCEDURE C_CPSH_INSERT
(@pxdbh_id char(11),
@pxkm char(26),
@pxqh char(4),
@pxnd char(4),
@pxks1 char(4),
@pxks2 char(4))
AS
DECLARE pxry_cursor CURSOR
FOR SELECT pxdbh_id FROM pxry
OPEN pxry_cursor
FETCH NEXT FROM pxry_cursor into @pxdbh_id
close pxry_cursor
return @pxdbh_id
GO
CREATE PROCEDURE C_CPSH_INSERT
(@pxdbh_id char(11),
@pxkm char(26),
@pxqh char(4),
@pxnd char(4),
@pxks1 char(4),
@pxks2 char(4))
AS
DECLARE pxry_cursor CURSOR
FOR SELECT pxdbh_id FROM pxry
OPEN pxry_cursor
FETCH NEXT FROM pxry_cursor into @pxdbh_id
close pxry_cursor
deallocate pxry_cursor
return @pxdbh_id
GO
CREATE PROCEDURE C_CPSH_INSERT
(@pxdbh_id char(11),
@pxkm char(26),
@pxqh char(4),
@pxnd char(4),
@pxks1 char(4),
@pxks2 char(4))
AS
DECLARE pxry_cursor CURSOR
FOR SELECT pxdbh_id FROM pxry
OPEN pxry_cursor
FETCH NEXT FROM pxry_cursor into @pxdbh_id
WHILE @@fetch_status=0
begin
...
FETCH NEXT FROM pxry_cursor into @pxdbh_id
end
close pxry_cursor
deallocate
return @pxdbh_id
GO
加一句:deallocate pxry_cursor
没有释放游标资源
`