2015-11-19 3 views
0

У меня есть очень простой (но большой) CSV-файл, и я хочу импортировать его в свою базу данных в Microsoft SQL Server 2014 (Database/Tasks/Import Data). Но я получаю следующее сообщение об ошибке:Импорт CSV в Microsoft SQL Server 2014 Wizard

The conversion returned status value 2 and status text "The value could not be converted because of a potential loss of data".

Вот пример моего файла CSV (содержащий ~ 9 миллионов строк):

1393013,297884,'20150414 15:46:25'

1393010,301242,'20150414 15:46:58'

В идеале моя первая и вторая столбцы BIGINT и третий является DateTime , В мастере я выбираю «unsigned 8 byte integer» для первых двух и «timestamp» для третьего, и я получаю ошибку. Даже я пытаюсь использовать строку для всех трех столбцов как тип данных, и все равно получаю ту же ошибку.

Я также попытался использовать команду bcp в командной строке. Он ничего не ошибается и ничего не вставляет! Кроме того, использование команды «bulk insert» меня забывает, что: «столбец слишком длинный, проверьте свои терминаторы», но они правильно исправлены!

Я ценю любую идею, которую вы имеете как решение этой простой задачи.

ответ

0

Вы пытаетесь изменить типы ввода: unsigned 8 byte integer - это настройка источника. Вам не нужно менять исходные настройки вообще. 'string [DT_STR]', а длина по умолчанию 50 будет работать.

«timestamp» - это двоичный тип. Я считаю, что тип, которым вы являетесь, - это дата и время, но этот набор находится в пункте назначения, а не в источнике. Источник по-прежнему является строкой независимо.

Вы по-прежнему не сможете импортировать свое значение даты в виде типа данных даты и времени. Это будет работать (добавлено тире) -> 2015-04-14 15:46:25. Импортируйте то, что у вас есть как строка, и исправьте его после импорта, если вы не можете изменить свой текстовый файл.

Смежные вопросы