--@id是int型,要做字符串相加,必须转化。
CREATE PROCEDURE [dbo].[SelectARecord](@ID int,@tblName varchar(200),@fldName varchar(200),@colName varchar(200)) AS
declare @str varchar(255)
set @str='Select ['+@colName+'] from ['+@tblName+'] where '+@fldName+'='+ convert(varchar,@ID)
exec @strGO
CREATE PROCEDURE [dbo].[SelectARecord](@ID int,@tblName varchar(200),@fldName varchar(200),@colName varchar(200)) AS
declare @str varchar(255)
set @str='Select ['+@colName+'] from ['+@tblName+'] where '+@fldName+'='+ convert(varchar,@ID)
exec @strGO
CREATE PROCEDURE [dbo].[SelectARecord](@ID int,@tblName varchar(200),@fldName varchar(200),@colName varchar(200)) AS
declare @str varchar(255)
set @str='Select ['+@colName+'] from ['+@tblName+'] where '+@fldName+'='''+ convert(varchar,@ID)+''''
exec @strGO
名称 'Select * from [SJ] where sjId=85' 不是有效的标识符。