学习总结之三(SQL SERVER游标CURSOR的使用)
2011-03-21 17:50
597 查看
SET LOCK_TIMEOUT 1800
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
BEGIN TRANSACTION
DECLARE @PRD_NO VARCHAR(30)
DECLARE @CUS_NO VARCHAR(20)
DECLARE @STD_LEVEL VARCHAR(10)
DECLARE @USR VARCHAR(12)
DECLARE MY_CURSOR CURSOR FOR
SELECT DISTINCT PRD_NO,CUS_NO,STD_LEVEL,USR FROM CUS_ML_GGEC HOLDLOCK WHERE PRD_NO+'*'+CUS_NO NOT IN (SELECT PRD_NO+'*'+CUS_NO FROM PRDT_AUTH )
OPEN MY_CURSOR
FETCH NEXT FROM MY_CURSOR INTO @PRD_NO,@CUS_NO,@STD_LEVEL,@USR
WHILE (@@FETCH_STATUS = 0)
BEGIN
INSERT INTO PRDT_AUTH (PRD_NO,CUS_NO,ZS_NO,STD_LEVEL,USR,SYS_DATE,CLS_ID)
VALUES( @PRD_NO,@CUS_NO,@PRD_NO+@CUS_NO,@STD_LEVEL,@USR,GETDATE(),'T' )
FETCH NEXT FROM MY_CURSOR INTO @PRD_NO,@CUS_NO,@STD_LEVEL,@USR
END
IF @@ERROR = 0
COMMIT TRANSACTION
ELSE
ROLLBACK
或者:
CLOSE MY_CURSOR
DEALLOCATE MY_CURSOR
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
BEGIN TRANSACTION
DECLARE @PRD_NO VARCHAR(30)
DECLARE @CUS_NO VARCHAR(20)
DECLARE @STD_LEVEL VARCHAR(10)
DECLARE @USR VARCHAR(12)
DECLARE MY_CURSOR CURSOR FOR
SELECT DISTINCT PRD_NO,CUS_NO,STD_LEVEL,USR FROM CUS_ML_GGEC HOLDLOCK WHERE PRD_NO+'*'+CUS_NO NOT IN (SELECT PRD_NO+'*'+CUS_NO FROM PRDT_AUTH )
OPEN MY_CURSOR
FETCH NEXT FROM MY_CURSOR INTO @PRD_NO,@CUS_NO,@STD_LEVEL,@USR
WHILE (@@FETCH_STATUS = 0)
BEGIN
INSERT INTO PRDT_AUTH (PRD_NO,CUS_NO,ZS_NO,STD_LEVEL,USR,SYS_DATE,CLS_ID)
VALUES( @PRD_NO,@CUS_NO,@PRD_NO+@CUS_NO,@STD_LEVEL,@USR,GETDATE(),'T' )
FETCH NEXT FROM MY_CURSOR INTO @PRD_NO,@CUS_NO,@STD_LEVEL,@USR
END
IF @@ERROR = 0
COMMIT TRANSACTION
ELSE
ROLLBACK
或者:
CLOSE MY_CURSOR
DEALLOCATE MY_CURSOR
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
相关文章推荐
- SQL Server学习:存储过程中Cursor(游标)的使用
- sql server游标的Cursor for后面使用变量
- SQL SERVER CURSOR游标的使用(转载)
- Android学习总结八:Cursor游标
- SQL SERVER CURSOR游标的使用(转载)
- sql server游标的Cursor for后面使用变量
- 在sql server中关于游标cursor的使用
- plsql学习:cursor游标使用例子(1)
- 学习使用MS SQL Server游标(CURSOR)
- MS SQL Server游标(CURSOR)的学习使用
- 学习SQL SERVER游标的使用
- MS SQL Server游标(CURSOR)的学习使用
- SQL SERVER CURSOR游标的使用(转载)
- mysql中游标的使用案例详解(学习笔记)
- Maven学习总结(9)——使用Nexus搭建Maven私服
- Mysql学习总结(31)——MySql使用建议,尽量避免这些问题
- java学习总结(16.05.28~16.05.29)使用svn管理源代码
- Hibernate 集合属性List 的使用----Hibernate 学习笔记总结(一)
- Maven学习总结(9)——使用Nexus搭建Maven私服
- Gradle依赖项学习总结,dependencies、transitive、force、exclude的使用与依赖冲突解决