日期:2014-05-18 浏览次数:20532 次
IF EXISTS (SELECT name FROM sysobjects WHERE name = 'Pr_GetList ' AND type = 'P ') DROP PROCEDURE Pr_GetList GO CREATE PROCEDURE Pr_GetList ( @iMode char(10), @TbName nvarchar(15), @iFiled nvarchar(20), @sWhere nvarchar(20) ) AS begin declare @sql varchar(100) if @iMode= '1 ' begin if @sWhere!= ' ' set @sql= 'Select DISTINCT ' + @iFiled + ' from '+ @TbName + 'where ' +@sWhere+ ' order by '+@iFiled else set @sql= 'Select DISTINCT ' + @iFiled + ' from ' + @TbName end else begin if @sWhere!= ' ' set @sql= 'Select * from ' + TableName + 'where ' +@sWhere+ ' order by '+@iFiled else set @sql= 'Select * from ' + TableName end exec(@sql) end
------解决方案--------------------
IF EXISTS (SELECT name FROM sysobjects WHERE name = 'Pr_GetList ' AND type = 'P ') DROP PROCEDURE Pr_GetList GO CREATE PROCEDURE Pr_GetList ( @iMode char(10), @TbName nvarchar(15), @iFiled nvarchar(20), @sWhere nvarchar(20) ) AS begin declare @sql varchar(100) if @iMode= '1 ' if @sWhere!= ' ' [color=#FF0000]set [/color]@sql= 'Select DISTINCT ' + @iFiled + ' from '+ @TbName + [color=#FF0000]' where '[/color] +@sWhere+ ' order by '+@iFiled else [color=#FF0000]set [/color]@sql= 'Select DISTINCT ' + @iFiled + ' from ' + @TbName else if @sWhere!= ' ' [color=#FF0000]set [/color]@sql= 'Select * from ' + TableName + [color=#FF0000]' where [/color]' +@sWhere+ ' order by '+@iFiled else [color=#FF0000]set [/color]@sql= 'Select * from ' + TableName execute @sql 对照红色部分改下再试试