当前位置: 代码迷 >> Sql Server >> 大家看看小弟我这这储存过程是咋回事
  详细解决方案

大家看看小弟我这这储存过程是咋回事

热度:26   发布时间:2016-04-27 14:45:38.0
大家看看我这这储存过程是怎么回事
SQL code
ALTER PROC [dbo].[Getlist]@RecNum varchar(10)='',@UserName varchar(10)='',@StartNum varchar(10)='',@endNum varchar(10)='',@Order varchar(10)='',@return varchar(255)='' outputASdeclare @endSqlStr varchar(255)declare @SQL varchar(255)declare @selectForm varchar(255)declare @W_YiQi varchar(255)declare @orderby varchar(6)set @selectForm=N'select * from RegInfo'if(@Order='')begin    set @orderby=N' id 'endelsebegin    set @orderby= N' RegTime 'endif (@RecNum!='')begin    set @W_YiQi='  AND recNum in ( [email protected]+' ) 'end elsebeginset @W_YiQi=''endif (@StartNum!='' and @endNum!='')begin     set @W_YiQi=' AND recNum >[email protected]+' AND recNum<= [email protected]end if (@UserName='')begin    set @[email protected]+ ' WHERE id>0 [email protected]_YiQi +' order by [email protected]ENDELSEBEGIN    set @[email protected]+ ' WHERE [email protected]+''' [email protected]_YiQi +' order by [email protected]ENDset @return [email protected]

调用储存过程
SQL code
USE [regInfoData]GODECLARE    @return_value int,        @return varchar(255)EXEC    @return_value = [dbo].[Getlist]        @RecNum = N'65535',@Order= N'1',        @return = @return OUTPUTSELECT    @return as [email protected]'SELECT    'Return Value' = @return_valueGO

[email protected]=select * from RegInfo WHERE id>0 AND recNum in ( 65535 ) order by RegTi
为什么RegTime 变成了RegTi

------解决方案--------------------
declare @orderby varchar(6)
改成
declare @orderby varchar(9)
  相关解决方案