Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL Server. bcp. Файл форматирования.Кавычки то есть, то нет ... можно ли как-то победить?  [new]
MasSQL
Member

Откуда: Екатеринбург
Сообщений: 27
Доброе время суток!
SQL Server 2016. Создаю файл форматирования fmt такой строчкой
bcp Base_S.dbo.tbl_S format nul -c -t, -f C:\TC\S.fmt –T

Разделителем полей выступает запятая, но в одном из полей есть запятая внутри значения поля, поэтому само значение поля выделено в кавычки. Чтобы такое принимать я правил руками файл fmt добавляя в разделитель ",\"" и "\",". Все работало хорошо, пока не пришел в руки csv файл в котором в этом поле то есть кавычки, то их нет ... Можно как-то обработать такую ситуацию?

Вот скрин - http://prntscr.com/gufqay

Заранее благодарю за помощь.
7 окт 17, 18:34    [20851109]     Ответить | Цитировать Сообщить модератору
 SQL Server. bcp. Файл форматирования.Кавычки то есть, то нет ... можно ли как-то победить?  [new]
aleks222
Guest
Це называется .CSV - Comma Separated Volume.
BCP его не поддерживает.

Если файл умеренного размера и производительность не главная проблема - разучивай OPENROWSET и ODBC-драйвер для .CSV.
У MS ODBC-драйвер есть по-дефолту.
8 окт 17, 17:41    [20852459]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server. bcp. Файл форматирования.Кавычки то есть, то нет ... можно ли как-то победить?  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 2843
aleks222,

Поддержка CSV появилась в 2017 версии.
9 окт 17, 11:21    [20853844]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server. bcp. Файл форматирования.Кавычки то есть, то нет ... можно ли как-то победить?  [new]
MasSQL
Member

Откуда: Екатеринбург
Сообщений: 27
А через BULK INSERT с FORMATFILE никак что-ли такие случаи не обработать?
9 окт 17, 12:29    [20854121]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server. bcp. Файл форматирования.Кавычки то есть, то нет ... можно ли как-то победить?  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 2843
MasSQL,

Если бы CSV можно было заливать, написав особо хитрый формат файл, то зачем было бы нужно добавлять поддержку формата в BCP / Bulk Insert?
9 окт 17, 12:53    [20854212]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server. bcp. Файл форматирования.Кавычки то есть, то нет ... можно ли как-то победить?  [new]
Ролг Хупин
Member

Откуда: Оттуда
Сообщений: 1429
MasSQL
Доброе время суток!
SQL Server 2016. Создаю файл форматирования fmt такой строчкой
bcp Base_S.dbo.tbl_S format nul -c -t, -f C:\TC\S.fmt –T

Разделителем полей выступает запятая, но в одном из полей есть запятая внутри значения поля, поэтому само значение поля выделено в кавычки. Чтобы такое принимать я правил руками файл fmt добавляя в разделитель ",\"" и "\",". Все работало хорошо, пока не пришел в руки csv файл в котором в этом поле то есть кавычки, то их нет ... Можно как-то обработать такую ситуацию?

Вот скрин - http://prntscr.com/gufqay

Заранее благодарю за помощь.


в интернете есть всякие шарповые прилагалища, которые умеют всасывать ЗаРаЗн-ый формат (CSV)
9 окт 17, 13:12    [20854292]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить