请问一下以下存储过程错在那呀,以下是分页的一部分代码,检查时说@pagesize附近有语法错误,晕呀!!: CREATE PROCEDURE Paging @pageindex int=1 , @pagesize int =10, @pagesort bit, @sortname varchar(255) AS declare @strtemp varchar(255) declare @strsql varchar(255) if @pagesort=0 begin set @strtemp='desc' end else begin set @strtemp='asc' end if @pageindex=1 begin select top @pagesize * from appforms GO
20
修改
删除
举报
引用
回复
这个问题第1个回答:
SQL code
CREATE PROCEDURE Paging
@pageindex int=1 ,
@pagesize int =10,
@pagesort bit,
@sortname varchar(255)
AS
declare @strtemp varchar(255)
declare @strsql varchar(255)
if @pagesort=0
begin
set @strtemp='desc'
end
else
begin
set @strtemp='asc'
end
if @pageindex=1
exec('select top '+@pagesize+' * from appforms ')
---
exec('select top '+ltrim(@pagesize)+' * from appforms ')
修改
删除
举报
引用
回复
这个问题第5个回答:
我只是贴了一部分代码出来呀,就是Top那里出错了,我改成以下代码:在调用时还是会出错: CREATE PROCEDURE Paging @pageindex int=1 , @pagesize int =10, @pagesort bit, @sortname varchar(255), @orderfiled varchar(255), @tb varchar(255) AS declare @strtemp varchar(255) declare @strsql varchar(255) if @pagesort=0 begin set @strtemp='desc' end else begin set @strtemp='asc' end if @pageindex=1 begin set @strsql="select top "+str(@pagesize)+" "+@orderfiled+" from ["+@tb+"] order by "+@sortname+" "+@strtemp+"" end exec @strsql GO
修改
删除
举报
引用
回复
这个问题第6个回答:
set @strsql='select top '+str(@pagesize)+' '+@orderfiled+' from ['+@tb+'] order by '+@sortname+' '+@strtemp
修改
删除
举报
引用
回复
这个问题第7个回答:
To happyflystone 我按照你的方法改成单引号,但问题都是这样,我是在VS2005调用的,测试时报以下错误: 执行查询时出错,请检查命令的语法和参数的类型和值(如果有),确保他们正确 名称:'slect top 5 pid,name from [appforms] order by pid asc'
修改
删除
举报
引用
回复
这个问题第8个回答:
上面的语句打小了一个'e' 应该是'select top 5 pid,name from [appforms] order by pid asc'
修改
删除
举报
引用
回复
这个问题第9个回答:
To happyflystone 我按照你的方法改成单引号,但问题都是这样,我是在VS2005调用的,测试时报以下错误: 执行查询时出错,请检查命令的语法和参数的类型和值(如果有),确保他们正确 名称:'select top 5 pid,name from [appforms] order by pid asc'不是有效的标识符
修改
删除
举报
引用
回复
这个问题第10个回答:
那你在VS2005中应该改成"
修改
删除
举报
引用
回复
这个问题第11个回答:
我是在VS2005中調用sql中的存儲過程的,我試過單引号、双引号都是报这个错呀,晕死
修改
删除
举报
引用
回复