马可大哥在吗?我在SQL语句中用变量还是不行啊,我也看了你那篇"[交流]动态SQL语句"!!!
我是在一个存储过程中用变量:
create proc fenye
@intDays int ,
@pagesize tinyint,
@pageno int,
@tnames varchar,
@tfield varchar,
@tvalues int
as
declare @RecordNumber int
declare @StartRecord int
select @RecordNumber = @pagesize*@pageno
select @StartRecord=@pagesize*(@pageno-1)+1
begin
select "RecordCount"=count(*) from dinfo
set rowcount @RecordNumber
declare curfenye Scroll Cursor
for
exec sp_executesql N 'select * from '+@tnames+' where '+@tfield+'='+@tvalues+' order by ID desc'
open curfenye
fetch absolute @StartRecord from curfenye
while @@fetch_status = 0
fetch next from curfenye
set rowcount 0
/*清场*/
CLOSE curfenye
DEALLOCATE curfenye
end
GO
报错是在for下面的那一行:
错误156:关键字exec附近有语法错误
第18行,在select * from附近有语法错误!