5
SQLを使用してファイルを挿入しようとしています。私は次のクエリを使用します。ストアドプロシージャを使用してフロントエンドなしでSQL Serverにファイルを挿入します。
INSERT INTO [dbo].[Attachments] (FileName, FileBinary)
SELECT
'non-date-in-sql-server-column',
BulkColumn
FROM
OPENROWSET(Bulk 'C:\Users\Pictures\Picture.JPG', SINGLE_BLOB) AS BLOB
正常です。
私は、動的パスを取るプロシージャを記述したいと思います。その私には私がFilebinaryをaddinで取ることができないというエラーが出る。これはvarbinaryというデータ型です。何が最善の方法ですか?
私は以下を行っていますが、正しくバイナリ値を取っていません。
DECLARE @SQLString NVARCHAR(MAX)
SET @SQLString = 'SELECT ' + '''' [email protected] +'''' + ' AS Name,' + 'FileBinary
FROM OPENROWSET(BULK N''' + @ImagePath + ''',SINGLE_BLOB) AS FileBinary(FileBinary);'
Insert Into Attachments (ApplicantID, FileName, FileBinary)
Values (@ApplicantID, @FileName, Convert(varbinary(max), @SQLString))