我表的结构是:
id int ---id是主键
name varchar(50)
memo1 varchar(50)
存储过程如下:
alter proc pubsel
@table nvarchar(200),
@field varchar(100),
@value varchar(50)
as
exec('select * from ['+@table+'] where ['+@field+']='+@value)
GO
当我调用exec pubsel 'copysource','id','44'的时候是对的
当我调用
exec pubsel 'copysource','name','fsdfsd' 出错了,这样的错误:Invalid column name 'fsdfsd'.
这到底是什么原因呀真是搞的头昏了,那位大哥帮帮忙呀解决了就给分....
id int ---id是主键
name varchar(50)
memo1 varchar(50)
存储过程如下:
alter proc pubsel
@table nvarchar(200),
@field varchar(100),
@value varchar(50)
as
exec('select * from ['+@table+'] where ['+@field+']='+@value)
GO
当我调用exec pubsel 'copysource','id','44'的时候是对的
当我调用
exec pubsel 'copysource','name','fsdfsd' 出错了,这样的错误:Invalid column name 'fsdfsd'.
这到底是什么原因呀真是搞的头昏了,那位大哥帮帮忙呀解决了就给分....
@table nvarchar(200),
@field varchar(100),
@value varchar(50)
@sql varchar(8000)
as
set @sql = 'select * from ['+@table+'] where ['+@field+']='''+@value
+''''
exec(@sql)
GO
@table nvarchar(200),
@field varchar(100),
@value varchar(50)
as
exec('select * from ['+@table+'] where ['+@field+']='''+@value+'''')
GO
@table nvarchar(200),
@field varchar(100),
@value varchar(50)
as
exec('select * from ['+@table+'] where ['+@field+']='''+@value+'')
GO