次のコードの何が問題になっていますか?
BULK INSERT test
FROM 'myfile_'+ CONVERT(VARCHAR(20), GETDATE(), 112) + '.TXT'
WITH
(FIRSTROW = 2,
FIELDTERMINATOR = '~',
ROWTERMINATOR = '\n')
エラーメッセージ:
メッセージ 102、レベル 15、状態 1、行 3 '+' 付近の構文が正しくありません。
次のコードの何が問題になっていますか?
BULK INSERT test
FROM 'myfile_'+ CONVERT(VARCHAR(20), GETDATE(), 112) + '.TXT'
WITH
(FIRSTROW = 2,
FIELDTERMINATOR = '~',
ROWTERMINATOR = '\n')
エラーメッセージ:
メッセージ 102、レベル 15、状態 1、行 3 '+' 付近の構文が正しくありません。
一括挿入ステートメントで日付をファイル名に動的に連結することはできません...
これを行うには、動的 Sql を使用してステートメントを作成し、それを実行する必要があります。
DECLARE @Sql NVARCHAR(MAX)
SET @Sql =
'BULK INSERT test
FROM ''myfile_' + CONVERT(VARCHAR(20), GETDATE(), 112) + '.TXT''
WITH
(FIRSTROW = 2,
FIELDTERMINATOR = ''~'',
ROWTERMINATOR = ''\n'')'
EXEC(@Sql)