看看下面的存储过程有什么问题DECLARE @strLoginID VARCHAR(16)
BEGIN
BEGIN TRANSACTION
declare db cursor for
SELECT LoginID FROM dbo.s_Users WHERE len(UnitCoding) in(9,12)
END
open db
fetch next from db into @strLoginID
while @@fetch_status = 0 BEGIN
insert into s_P_User
select @strLoginID,LevelID from s_P_User where LoginID = 'aa'
fetch next from db into @strLoginID
END
close db
deallocate db
COMMIT TRANSACTION
BEGIN
BEGIN TRANSACTION
declare db cursor for
SELECT LoginID FROM dbo.s_Users WHERE len(UnitCoding) in(9,12)
END
open db
fetch next from db into @strLoginID
while @@fetch_status = 0 BEGIN
insert into s_P_User
select @strLoginID,LevelID from s_P_User where LoginID = 'aa'
fetch next from db into @strLoginID
END
close db
deallocate db
COMMIT TRANSACTION
解决方案 »
- 求助关于数据库查找
- 这种情况下,应该用左连接呢?还是用右连接好?
- 关于合并查询结果的问题请教大家,谢谢!
- 关于一个传统的数据库设计问题
- 求一最新的汉字拼音库!高分救急呀!
- 一个很菜的问题---SQL SERVER里面的--除--是用哪个符号?(不是整除)
- 哪位大侠知道execute immediate "master.dbo.xp_cmshell 'dir c:\'"的返回值是呀,谢谢。up有分。
- 关于数据类型的一个简单问题****在线等候,答者有分******
- 各位大侠 帮帮忙 100分马上送!!!
- 如何用Sql语句完成下面的例子?
- MS SQL 中一个表的多个字段对应另一个表的同一个字段如何效率查询?
- 抛砖引玉 大家讨论农历日历怎么写
----BEGIN
BEGIN TRANSACTION
declare db cursor for
SELECT LoginID FROM dbo.s_Users WHERE len(UnitCoding) in(9,12)
----END
open db
fetch next from db into @strLoginID
while @@fetch_status = 0
BEGIN
insert into s_P_User
select @strLoginID,LevelID from s_P_User where LoginID = 'aa'
fetch next from db into @strLoginID
END
close db
deallocate db
COMMIT TRANSACTION
declare cur cursor fast_forward for
select id,name from a;
open cur;
fetch next from cur into @id,@name;
while @@fetch_status=0
begin
--做你要做的事
fetch next from cur into @id,@name;
end
close cur;
deallocate cur;
declare db cursor fast_forward for
SELECT LoginID FROM dbo.s_Users WHERE len(UnitCoding) in(9,12)
open db;
fetch next from db into @strLoginID
while @@fetch_status = 0
BEGIN
insert into s_P_User
select @strLoginID,LevelID from s_P_User where LoginID = 'aa'
fetch next from db into @strLoginID
END
close db
deallocate db
怎么放到第一个BEGIN...END里面去了?