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

Откуда:
Сообщений: 5
Доброго времени суток.

Необходимо с помощью инструкции BULK INSERT импортировать информацию из файла данных (формат *.CSV, разделитель ";") в таблицу, где полей больше, чем в файле данных. Следовательно, нужно создать файл форматирования, с чем и возникают проблемы (от криворукости).

(SSMS 2012)
Для создания файла используется следующая инструкция:
bcp USER-PC.dbo.Weather.Data format nul -f Format.fmt -T
Возникает следующее сообщение:
В качестве параметров in, out и format требуется допустимое имя таблицы

Смысл сообщения отчего-то мне неясен (вероятно, не хватает сообразительности :) )
Может, кто-нибудь сходу увидит косяк да поможет преодолеть этакое препятствие.

Поэкспериментировав с таблицей (количество полей таблицы стало равно количеству полей в файле), был сделан вывод, что сама инструкция BULK INSERT без использования файла форматирования работает превосходно.

Заранее благодарю.
11 июн 14, 01:55    [16152062]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10234
Блог
USER-PC.dbo.Weather.Data - это что?
11 июн 14, 08:06    [16152201]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Tempton
Member

Откуда:
Сообщений: 5
Knyazev Alexey
USER-PC.dbo.Weather.Data - это что?

Здравствуйте, это имя сервера, схема, имя БД, имя таблицы.
11 июн 14, 10:59    [16153005]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Glory
Member

Откуда:
Сообщений: 104760
Tempton
это имя сервера,

А зачем оно нужно ?
11 июн 14, 11:03    [16153041]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Glory
Member

Откуда:
Сообщений: 104760
Tempton
схема, имя БД, имя таблицы.

Вы порядок частей в именовании сами определяете каждый раз ?
11 июн 14, 11:03    [16153047]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Tempton
Member

Откуда:
Сообщений: 5
Glory
Tempton
это имя сервера,

А зачем оно нужно ?


Прописываю имя сервера, т.к. без него - ошибки.

bcp dbo.Weather.DataSecond format nul -f Format.fmt -T
1. Не удаётся открыть базу данных dbo, запрашиваемую именем входа. Не удалось выполнить вход.
2. Ошибка входа пользователя.

Понимаю, не логично, особенно, учитывая существование параметра "-S" для указания экземпляра сервера..
Показалась требование
В качестве параметров in, out и format требуется допустимое имя таблицы
приятнее, чем эти две ошибки.

Glory
Вы порядок частей в именовании сами определяете каждый раз ?

Если правильно понял Ваш вопрос - да.
11 июн 14, 11:46    [16153447]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Glory
Member

Откуда:
Сообщений: 104760
Tempton
Glory
Вы порядок частей в именовании сами определяете каждый раз ?

Если правильно понял Ваш вопрос - да.

А вы не пробовали прочитать в хелпе про правильный порядок частей именования ?

Tempton
Прописываю имя сервера, т.к. без него - ошибки.

bcp dbo.Weather.DataSecond format nul -f Format.fmt -T
1. Не удаётся открыть базу данных dbo, запрашиваемую именем входа.

Никаких мыслей не возникает ?
11 июн 14, 11:47    [16153459]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Tempton
Member

Откуда:
Сообщений: 5
Glory
А вы не пробовали прочитать в хелпе про правильный порядок частей именования ?


Пробовал и читал. Зачем же сюда обращаться, если не всё сделал для решения ошибки.
Но видимо, то что прочёл, понял не правильно.
Может, Вам не покажется сложным указать, какой же порядок правильный?

Glory
Никаких мыслей не возникает ?


Возникают конечно.
Без указания схемы он просто не понимает, что ж это за БД и таблица к ней.

Задаю команду следующим образом:
bcp Weather.Data format nul -f Format.fmt -S USER-PC -T

Ошибка: Недопустимое имя объекта "Weather.Data".
11 июн 14, 12:03    [16153596]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Glory
Member

Откуда:
Сообщений: 104760
Tempton
Пробовал и читал. Зачем же сюда обращаться, если не всё сделал для решения ошибки.
Но видимо, то что прочёл, понял не правильно.
Может, Вам не покажется сложным указать, какой же порядок правильный?

Это описание формата вызова из хелпа. Который вы "читали"

bcp {[[database_name.][schema].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-m max_errors] [-f format_file] [-x] [-e err_file]
[-F first_row] [-L last_row] [-b batch_size]
[-d database_name] [-n] [-c] [-N] [-w] [-V (70 | 80 | 90 )]
[-q] [-C { ACP | OEM | RAW | code_page } ] [-t field_term]
[-r row_term] [-i input_file] [-o output_file] [-a packet_size]
[-S [server_name[\instance_name]]] [-U login_id] [-P password]
[-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"]

Tempton
Возникают конечно.
Без указания схемы он просто не понимает, что ж это за БД и таблица к ней

Фейспалм.

Сообщение было отредактировано: 11 июн 14, 12:06
11 июн 14, 12:05    [16153607]     Ответить | Цитировать Сообщить модератору
 Re: Создание файла форматирования  [new]
Tempton
Member

Откуда:
Сообщений: 5
Glory
Фейспалм


Прекрасно Вас понимаю. Тяжело людям помогать и истину открывать. Особенно, туговатым людям :)

Glory
Это описание формата вызова из хелпа. Который вы "читали"


Понял теперь, в чём ошибка. Извините за невнимательность. В ранних попытках указывал в правильном порядке, только из-за другого ошибка возникала, вот и решил по глупости как-то изменить путь (уже не помню, почему решил изменить порядок, ведь очевидно же, что его менять не надо).

Спасибо Glory!
11 июн 14, 12:13    [16153686]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить