读书人

存储过程变量初始化的有关问题(! )

发布时间: 2012-01-10 21:26:50 作者: rapoo

存储过程变量初始化的问题(在线等! )
我写了这样一个存储过程:
CREATE Proc ceocio_GetBookList
(
@TID int,
@Author nvarchar(50),
@Bname nvarchar(50),
@orderby nvarchar(50)
)
as
if (@TID=0)
BEGIN
select * from
Book Order @orderby desc
END
else
^.........

我是想通过接收前台传来的值进行排序的
但是,在存储过程检查时报这样的错误:就是说排序的列不能使变量
所以,我就想在刚开始是把@ordeerby的值初始化为列ID
请高手指点一下!

[解决办法]
exec 'select * from Book Order by ' + @orderby + ' desc '
[解决办法]
Order @orderby desc
换成 Order 列名 desc

[解决办法]
不太懂存储过程,帮忙顶一下
[解决办法]
CREATE Proc ceocio_GetBookList
(
@TID int,
@Author nvarchar(50),
@Bname nvarchar(50),
@orderby nvarchar(50)
)
as
declare @sql varchar(100)
if @orderby= ' ' set @orderby = 'ID '
if (@TID=0)
set @sql = 'select * from Book Order by '+ @orderby + ' desc '
else
^.........
exec @sql

读书人网 >asp.net

热点推荐