GreenLine1.mp3、GreenLine2.mp3 などの名前のオーディオ ファイルのセットがあります。それらを BLOB としてテーブルに書き込みます (MS SQL Server'08 を使用します)。SQL 要求は次のとおりです。
DECLARE @aud AS VARBINARY(MAX)
DECLARE @num AS INT
-- Load the audio data
SET @num=1
WHILE (@num<38)
BEGIN;
SELECT @aud = CAST(bulkcolumn AS VARBINARY(MAX))
FROM OPENROWSET(
BULK
'C:\Users\Ilya\folder\GreenLine' + CAST(@num AS VARCHAR) + '.mp3',
SINGLE_BLOB ) AS x
-- Insert the data to the table
INSERT INTO Mb2.dbo.Audios (Id, [Content])
SELECT NEWID(), @aud
SET @num = @num + 1
END;
エラーがあります:「+」付近の構文が正しくありません。「,」または「)」が必要です。
書いてみたら
'C:\Users\Ilya\folder\GreenLine' + CAST(@num AS VARCHAR) + '.mp3'
変数に入れて BULK の後に配置すると、@variable の近くに Incorrect syntax、expected STRING、または TEXT_LEX が表示されます