以下代码有什么问题?
BULK INSERT test
FROM 'myfile_'+ CONVERT(VARCHAR(20), GETDATE(), 112) + '.TXT'
WITH
(FIRSTROW = 2,
FIELDTERMINATOR = '~',
ROWTERMINATOR = '\n')
错误讯息:
Msg 102,Level 15,State 1,Line 3'+'附近的语法不正确。
答案 0 :(得分:4)
您无法在批量插入语句中动态地将日期连接到文件名...
如果你想这样做,你必须使用动态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)