Использование массовой вставки для импорта файла .csv - PullRequest
1 голос
/ 14 марта 2012

У меня есть файл формата csv, который я хочу импортировать на SQL Server 2008 с помощью массовой вставки. У меня есть 80 столбцов в CSV-файле, который имеет запятую, например, состояние столбца имеет NY, NJ, AZ, TX, AR, VA, MA , как это для нескольких миллионов строк. Поэтому я заключил столбец состояния в двойные кавычки, используя пользовательский формат в Excel, чтобы этот столбец обрабатывался как один столбец и не разделялся через запятую между столбцами. Но импорт все равно не выполнен; все еще это раскалывается в запятой. Может кто-нибудь, пожалуйста, предложите успешный импорт столбцов, содержащих запятую, используя массовую вставку Я использую этот код bulk insert test from 'C:\test.csv' with ( fieldterminator=',', rowterminator='\n' ) go Я видел подобный вопрос, ранее заданный здесь , но я не знаю Visual Basic для применения кода. Есть ли другой способ изменить файл в Excel?

Ответы [ 2 ]

3 голосов
/ 14 марта 2012

Есть ли другой способ изменить файл в Excel?

Оказывается, есть, по крайней мере, в Windows.

  1. Перейти в меню "Пуск"> Панель управления> Региональные и языковые параметры.
  2. На вкладке "Региональные параметры" нажмите кнопку "Настройка".
  3. В поле Разделитель списка замените , на |.Нажмите кнопку ОК.

При сохранении файла в формате .CSV через Excel теперь будет создан файл значений, разделенный каналом.Обязательно отмените это изменение для параметра «Региональные параметры», так как Excel использует разделитель списка для других функций, таких как функции.

Затем вы можете сделать так, как рекомендует «Дата данных», и массово загрузить файл, используя | в качестве разделителя столбцов..

2 голосов
/ 14 марта 2012

Вы должны создать файл формата: http://msdn.microsoft.com/en-us/library/ms191516.aspx

Если ваши данные содержат запятые, я бы выбрал другой разделитель.Вы можете указать "|"в качестве разделителя в файле формата.

Пример:

10.0
4
1       SQLCHAR       0       100     "|"     1     Col1  SQL_Latin1_General_CP1_CI_AS
2       SQLCHAR       0       100     "|"     2     Col2  SQL_Latin1_General_CP1_CI_AS
3       SQLCHAR       0       100     "|"     3     Col3  SQL_Latin1_General_CP1_CI_AS
4       SQLCHAR       0       7000    "\r\n"  4     Col11 SQL_Latin1_General_CP1_CI_AS
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...