Мне нужно импортировать 30 файлов .csv в базу данных MS SQL SERVER. Я могу использовать BULK INSERT, но из-за количества файлов, которые я хочу сделать с помощью цикла. Каждый файл имеет имя DP (1) .csv, DP (2) .csv, DP (3) .csv, ..., DP (30) .csv.Переменные в MS SQL Bulk Вставить путь строки
Я написал цикл WHILE
и счетчик, который также может использоваться для идентификации имени файла, но у меня возникают проблемы с синтаксисом при включении переменной счетчика в имя пути. Вот мой код:
DECLARE @COUNT INT
SET @COUNT = 1
USE Db_Pc
WHILE @COUNT <= 30
BEGIN
BULK INSERT acks FROM 'C:\Users\JASON SAMUELS\Documents\M-DD\DP('[email protected]+').csv'
WITH(FIRSTROW = 2,
ROWTERMINATOR = '\n',
FIELDTERMINATOR = ',')
SET @COUNT = @COUNT + 1
END
ошибка кажется на первый + непосредственно перед переменной @count в строке пути. Это сообщение об ошибке, которое я получаю:
Msg 102, Level 15, State 1, Line 8
Incorrect syntax near '+'.
Msg 319, Level 15, State 1, Line 8
Incorrect syntax near the keyword 'with'. If this statement is a common table expression, an xmlnamespaces clause or a change tracking context clause, the previous statement must be terminated with a semicolon.
Как вставить переменную в строку?
Это ваш путь к файлу C: \ Users \ JASON SAMUELS \ Documents \ M-DD \ DP (1) .csv или ваш путь к файлу - это что-то вроде C: \ Users \ JASON SAMUELS \ Documents \ M-DD \ DP1.csv ?? –
Первый, C: \ Users \ JASON SAMUELS \ Documents \ M-DD \ DP (1) .csv –