Я использую следующую процедуру, чтобы попытаться вставить xml через путь к файлу в столбец xml. Я получаю сообщение об ошибке, чтобы объявить скалярную переменную для ForeignId. Есть ли лучший способ сделать то, что я пытаюсь сделать, или я на правильном пути?Процедура вставки Xml Into Sql Server - обязательная декларация Scalar Variable
Вот процедура
ALTER PROC [dbo].[InsertXml] @path nvarchar(100)
,@ForeignId uniqueidentifier
AS
BEGIN
SET NOCOUNT ON
DECLARE @SQL nvarchar(4000) =
'INSERT INTO XmlTable(XmlId
, ForeignId
, TestXml)
SELECT NEWID()
, @ForeignId
,* FROM OPENROWSET(
BULK ''' + @path + ''',
SINGLE_BLOB) AS x;'
EXECUTE(@SQL);
RETURN @@ERROR;
END
Есть уже [десятки вопросов] (http://stackoverflow.com/search?q=sql+must+declare+scalar+variable) об этом – Pondlife