日期:2014-05-18 浏览次数:20619 次
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
对照红色部分改下再试试