0
我知道我可以使用表值参数作为另一个选项,我已经能够实现它。我试图使用这种方法(表变量不是表值)的原因是因为我正在学习,我想了解如何通过存储过程插入数据库的其他方法。是否可以在C#/ SQL Server中使用表变量作为存储过程的参数?
下面是当前查询我:
CREATE PROCEDURE TVar
(
DECLARE @TblVar TABLE
(Product nvarchar(max), Qty int)
)
AS
Insert Into sample_tbl Select * FROM @TblVar
是否有可能有这样的方案,其中在C#代码,我会用一个数据表来传递是一个可以用一个表时,可以做一个参数值参数。执行查询时出现错误。
这里的错误:
Msg 156, Level 15, State 1, Line 2
Incorrect syntax near the keyword 'DECLARE'.
Msg 102, Level 15, State 1, Line 5
Incorrect syntax near ')'.
我已经能够使用表值,实际上,我想有一个表变量作为参数,在参数的C#代码中使用数据表来实现。非常感谢您的回应。 –
你的评论似乎不符合你在你的问题中所说的话?无论如何,很高兴提供帮助。 –
@MitchWheat是否可以解决另一方向移动数据的问题,例如:存储的proc会导致OUTPUT TVP,然后将这些数据放入C#DataTable中,然后将该表清空为Excel? – whytheq