Я пытаюсь загрузить свой хранилище данных Azure SQL с помощью утилиты bcp, но после этого проблема возникла ... Я, наконец, получил текстовый файл с одной записью импортировать успешно, но теперь, когда я положил два или несколько записей в файл, это бомбы с ошибкой (через выходной файл ошибок):Ошибка BCP Числовое значение вне диапазона при импорте многострочного файла в хранилище данных Azure SQL
Ряд 1, Колонка 5: Числовое значение вне диапазона
данные выглядит следующим образом:
2014-06-01,11111,test,used,1
2014-06-01,22222,test,used,1
и стол я импортировать в выглядит следующим образом:
[Date] (date, not null)
[Code] (varchar(50), not null)
[Model] (varchar(100), not null)
[Type] (varchar(20), not null)
[Quantity] (int, not null)
Я думаю, что это что-то делать с новой строки, но я не был в состоянии работать вокруг него. Я попытался изменить кодировку в Notepad ++ на ANSI, ISO-8859-1, UTF-8 без спецификации, а также UTF-16 LE & BE с Visual Studio CODE. Когда был указан «ANSI», однострочный файл импортируется успешно. Последовательность конца-линии устанавливается на НЧ, и моя BCP команда выглядит следующим образом:
bcp Schema.Table in C:\BcpFiles\sourceData.txt -S serverName -d databaseName -U userName -P password -q -c -t "," -r/n -e C:\BcpFiles\Errors.txt
Спасибо за ваш ответ. Это, однако, не разрешило это для меня. Он по-прежнему работает с одной записью, но когда я добавляю разрыв строки (LF), ошибка: «Недопустимое значение символа для спецификации литья» и все еще указывает на столбец 5 (номер 1 вставляется в столбец INT). –
Можете ли вы взглянуть на обновление моего ответа - отлично работает для меня. Это вызывает вопрос - можете ли вы выполнить скрипт таблицы, в которую вы пытаетесь включить BCP, в базу данных, указанную -d, также обратите внимание, что существует пробел между -r и \ n –
Azure SQL Data Warehouse поддерживает только BCP с UTF -8. При повторной попытке был файл в UTF-8? –