当前位置: 代码迷 >> Sql Server >> SQL游标有关问题
  详细解决方案

SQL游标有关问题

热度:49   发布时间:2016-04-24 10:17:38.0
SQL游标问题
在那种情况下用其它的方法都无法完成,必须使用游标来处理?举个简单的例子说明一下,谢谢
举出:
查询
更新
删除
------解决方案--------------------
if object_id('[TB]') is not null drop table [TB]
create table [TB](ld_P INT,LastName varchar(50),FirstName varchar(50),Address varchar(50),City VARCHAR(50))
insert into [TB]
select 1,'1',NULL,NULL,'bvv' union all
select 2,'4',NULL,NULL,'bvv' union all
select 3,'8',NULL,NULL,'bvv' union all
select 4,'12',NULL,NULL,'bvv' union all
select 5,'22',NULL,NULL,'222'
 
GO
 select * from [TB]
 go
DECLARE @str VARCHAR(50)
 ----------------------开始--------------------
BEGIN TRY
BEGIN TRAN
    DECLARE test  CURSOR   FOR SELECT  LastName FROM dbo.TB
    OPEN test
 FETCH NEXT FROM test INTO @str
 WHILE (@@fetch_status=0)
  BEGIN
    PRINT   @str  --取出LastName给变量,有这个变量值、添加、删除、更新都可以操作
   FETCH NEXT FROM test INTO @str
  END
    CLOSE test
    DEALLOCATE test
COMMIT TRAN
END TRY
BEGIN CATCH
     IF @@TRANCOUNT > 0
            ROLLBACK TRAN
END CATCH
 ---------------------结束--------------------
给你一个例子
  相关解决方案