封装游标存储过程(Pr_execsql2)
使用脚本自己可以执行自己的特性,封装游标操作存储过程如下:
CREATE PROCEDURE Pr_ExecSQL2
@Asqlstring VARCHAR(8000) --输入的SQL语句
AS
EXEC ('
--启动事务
BEGIN TRAN
DECLARE @ASql VARCHAR(8000)
DECLARE tnames_cursor CURSOR LOCAL FAST_FORWARD FOR '+ @asqlstring +'
OPEN tnames_cursor
FETCH NEXT FROM tnames_cursor INTO @ASql
WHILE (@@FETCH_STATUS=0)
BEGIN
print @ASql
EXEC (@ASql)
IF @@ERROR <> 0 GOTO FINALEX99v
FETCH NEXT FROM tnames_cursor INTO @ASql
END
CLOSE tnames_cursor
DEALLOCATE tnames_cursor
COMM99v TRAN
RETURN
FINALEX99v:
ROLLBACK TRAN
CLOSE tnames_cursor
DEALLOCATE tnames_cursor
')
使用方法:
declare @sql varchar(8000)
set @sql='select ''update a set a.a='' + b.a from b '
exec Pr_execsql2 @sql
本文作者:相关阅读:
不断探索与追求 精简CSS文件的一点思路
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
ASP.NET中的DataColumn对象
ASP技巧:rs.getrows方法
单台Exchange2003实现RPCoverHTTP
如何找回Windows 7中丢失的回收站?
ASP.NET: Connection Strings
登入和注销 FreeBSD 系统
用vbs实现本地连接禁用/启用脚本代码
ORACLE的外连接
兼容FF/IE跟随鼠标的层的效果
用SQL语句删除重复记录的四种方法
Linux Log文件查看方法
php下通过curl抓取yahoo boss 搜索结果的实现代码