我正在尝试使用SQL事件探查器和调优向导来调查SQL 2008 R2数据库中的索引使用情况。 应用程序使用ODBC连接到数据库。 db没有存储过程,并且使用SQL语句访问所有数据。 分析器将语句显示为
declare @p1 int
set @p1=10234
exec sp_prepexec @p1 output,N'@P1 varchar(max),@P2 varchar(max),@P3 int,@P4 int',
N'SELECT p.PaymentID from Payment where DivisionCode = @P1 and [...],','DM','A',1,1
select @p1
调整向导将分析数据并发出警告
49% of consumed workload has syntax errors. Check tuning log
日志显示原因
事件未引用任何表格。
或
[Microsoft] [SQL Server Native Client 10.0] [SQL Server]无效的对象名称“付款”。
我需要使用哪些设置来使调优向导了解sp_prepexec查询? 我必须对跟踪文件进行哪些更改才能使调优向导使用它?
感谢。
答案 0 :(得分:3)
我能够让我的工作!只需注释掉set
这样的声明:
declare @p1 int;
--set @p1=9
exec sp_prepexec @p1 output,N'@p0 bit,@p1 varchar(8000),@p2 bit',N'select blah from blah where @p0=1 and blah.LastName=@p1',@p0=0,@p1='Kumar'
select @p1