您好,欢迎访问一九零五行业门户网

关于存储过程的

use [jccmsdb] go /****** 对象: storedprocedure [dbo].[up_datapagerownumber] 脚本日期: 04/25/2013 20:06:12 ******/ set ansi_nulls on go set quoted_identifier on go alter procedure[dbo].[up_datapagerownumber] @sql nvarchar(2000), @order nvar
use [jccmsdb]
go
/****** 对象: storedprocedure [dbo].[up_datapagerownumber] 脚本日期: 04/25/2013 20:06:12 ******/
set ansi_nulls on
go
set quoted_identifier on
go
alter procedure[dbo].[up_datapagerownumber]
@sql nvarchar(2000),
@order nvarchar(40),
@pageindex int,
@pagesize int,
@totalrecorder int output
as
begin
set nocount on;
declare @excesql nvarchar(4000)
declare @start_row_num as int
set @start_row_num=(@pageindex-1)*@pagesize+1
declare @end_row_num int
set @end_row_num=@pageindex*@pagesize
declare @rownumber nvarchar(100)
set @rownumber=',row_number() over(order by '+@order+')as rownumber from'
set @sql=replace(@sql,'from',@rownumber)
set @excesql='select @totalrecorder=max(rownumber)from(' +@sql+ ')as tmp'
execute sp_executesql @excesql,n'@totalrecorder int output',@totalrecorder output
set @excesql = 'select*from(' + @sql + ') as tmp where rownumber between' +convert( nvarchar,@start_row_num)
+ 'and' +convert( nvarchar,@end_row_num)
print @excesql
execute(@excesql)
end
declare @a int
exec up_datapagerownumber select * from jc_article,id,2,2,@a output
print @a
为什么会一直抱这个错??抓狂。。。。
select*from(select * ,row_number() over(order by id)as rownumber from jc_article) as tmp where rownumber between3and4
消息 4145,级别 15,香港服务器租用,状态 1,香港空间,虚拟主机,第 1 行
在应使用条件的上下文(在 'between3and4' 附近)中指定了非布尔类型的表达式。
其它类似信息

推荐信息