【发布时间】:2012-04-07 12:31:41
【问题描述】:
我运行 SQL 分析器,我想在查询分析器中运行一些查询,但我收到错误“SQL Server:找不到带有句柄 x 的准备好的语句”。
有什么想法吗?
这是我从分析器复制的 SQL:
declare @p1 int
set @p1=10
exec sp_prepare @p1 output,N'@P0 int,@P1 nvarchar(4000),@P2 datetime,@P3 datetime,@P4 datetime,@P5 datetime,@P6 datetime,@P7 datetime',N'SELECT * FROM SCHEDULE WITH (NOLOCK) WHERE RoomNo= @P0 AND STATUS = @P1 AND ( (EndTimeDT <= @P2 AND EndTimeDT > @P3 ) OR (StartTimeDT >= @P4 AND StartTimeDT < @P5 ) OR (StartTimeDT <= @P6 AND EndTimeDT > @P7 ) )',1
select @p1
go
exec sp_execute 10,19,N'A','2012-03-22 16:30:00','2012-03-22 16:00:00','2012-03-22 16:00:00','2012-03-22 16:30:00','2012-03-22 16:00:00','2012-03-22 16:30:00'
go
【问题讨论】:
-
在对应的RPC:Starting事件中,文本数据可能包含
set @p1=NULL。 Smith's answer 提到了这一点。 -
仅供参考 - 这看起来就像 Cognos 将查询传递给 SQL Server 的方式。
标签: sql sql-server