0
我正尝试在SQL Server 2008中创建一个可以将数据插入到任何表(不是表格特定)的存储过程。我创建了一个如下所示,但在执行过程中抛出异常,即用于插入的SQL Server单存储过程
无效的对象名称'dbo。@ table'。
存储过程的代码:
CREATE PROCEDURE dbo.sp_InsertValues
@table varchar(15)
, @fields varchar(100)
, @values varchar(100)
AS
BEGIN
INSERT INTO [dbo].[@table] (@fields) VALUES (@values)
END
GO
记住我检查的参数表,列和值参数不为空。
要做到这一点,你将能够建立动态SQL出你传递的参数 –
为了充实亚当的评论,参见[执行](http://msdn.microsoft .COM/EN-US /库/ ms188332(v = SQL.100)的.aspx)。 – HABO
这种技术并不好,因为它没有使用参数化的SQL。请不要这样做。研究,为什么参数化SQL在决定插入数据的这种方式之前是重要的。 – usr