请教sql server中游标出现一个奇怪的错误

hulifang333 2008-12-17 06:26:26
找不到存储过程 'DECLARE crTemp SCROLL CURSOR FOR SELECT id,title FROM dbo.tb_Res_Book_Content ORDER BY ID ASC'。

这是我在用sql server数据库中声明一个变量等于这个游标的声明的情况下出现的错误,请问哪位曾经遇到过这样的错误,又是什么原因呢?实在找不出来了,所以才发贴请教各位的,先谢谢啦!

源代码是:
DECLARE @ID INT --编号
DECLARE @BookId INT --图书id
DECLARE @Title VARCHAR(50) --图书名字

IF NOT EXISTS(SELECT * FROM dbo.sysobjects WHERE id=object_id(N'dbo.tb_temp') AND OBJECTPROPERTY(id,N'IsUserTable')=1) BEGIN
CREATE TABLE dbo.tb_temp(id int PRIMARY KEY,bookid int,title varchar(50))
END
--INSERT INTO dbo.tb_temp(id,bookid,title)
--SELECT a.IID,a.BookId,b.title FROM dbo.tb_Res_Book_Text a,dbo.tb_Res_Book_Content b
--WHERE b.ID=a.bookid

DECLARE @cr_SQL VARCHAR(1000)
SET @cr_SQL='DECLARE crTemp SCROLL CURSOR FOR '
+'SELECT id,title FROM dbo.tb_Res_Book_Content ORDER BY ID ASC'
PRINT @cr_SQL
EXEC @cr_SQL
OPEN crTemp
FETCH NEXT FROM crTemp INTO @ID,@Title
print @@CURSOR_ROWS
return
IF @@CURSOR_ROWS=0 BEGIN
CLOSE crTemp
DEALLOCATE crTemp
RETURN
END
...全文
47 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sljif 2008-12-17
  • 打赏
  • 举报
回复
游标定义的时候怎么中间有个空格阿!这是不允许的!!!指的是游标的名称!
sljif 2008-12-17
  • 打赏
  • 举报
回复
游标定义的时候怎么中间有个空格阿!这是不允许的!!!
hulifang333 2008-12-17
  • 打赏
  • 举报
回复
它把它当过程了?晕
liangCK 2008-12-17
  • 打赏
  • 举报
回复
EXEC要加括号()

EXEC(@SQL)

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧