假设@BY_WHERE = " id = '1'"存储过程内容为:CREATE PROCEDURE [dbo].[T_DJ_NSRJBXX_QUERY]
@BY_WHERE VARCHAR(2000)
ASBEGINFROM T_DJ_NSRJBXX nsr where这儿怎么写?@BY_WHERE?
@BY_WHERE VARCHAR(2000)
ASBEGINFROM T_DJ_NSRJBXX nsr where这儿怎么写?@BY_WHERE?
declare @sql varchar(8000)
set @sql = 'select * FROM T_DJ_NSRJBXX nsr where ' + @BY_WHERE
exec(@sql)这样就可以了
'用char(39)来替代~~
传入参数时用 'id=''1'''declare @str varchar(8000)
set @str = '... FROM T_DJ_NSRJBXX nsr where ' + @BY_WHERE
exec(@str)
exec(@strsql),要用动态sql了.
set @str='电算代号=''1'''
print @str
(
@BY_WHERE VARCHAR(2000)
)
ASBEGIN
declare @sql varchar(1000)
set @sql = 'select * FROM T_DJ_NSRJBXX nsr where ' + @BY_WHERE
exec(@sql)
end