Опубликован: 11.12.2006 | Доступ: свободный | Студентов: 5820 / 381 | Оценка: 4.42 / 3.86 | Длительность: 57:15:00
Лекция 24:

Загрузка базы данных

Необязательные параметры

Вы можете использовать необязательные (дополнительные) параметры, перечисленые в табл. 24.2, для модифицирования работы программы BCP при выполнении массового копирования.

Таблица 24.2. Необязательные описатели массового копирования
Параметр Описание
-a размер_пакета Указывает количество байтов в сетевом пакете, передаваемом между клиентом и сервером
-b размер_группы Указывает количество строк, которое нужно включить в группу (пакетное задание). Каждая группа копируется как одна транзакция. По умолчанию все строки файла данных копируются как одна группа с использованием одной фиксации. Этот параметр может понадобиться, когда вам нужно выполнять массовые вставки, чтобы освобождать блокировки таблиц, когда идет обработка таких групп, что позволит выполнять другую обработку
-c Указывает, что BCP использует символьный тип данных
-e файл_ошибок Указывает путь доступа к файлу ошибок, в котором протоколируются ошибки при работе BCP
-f форматный_файл Указывает путь доступа к форматному файлу, который ранее использовался программой BCP. Форматный файл создается в том случае, если BCP запускается с параметром format, который описан выше. При использовании форматного файла другие параметры форматирования можно не указывать
-h "подсказка [,.n]" Указывает подсказки, которые будут использоваться при массовом копировании. Это могут быть следующие подсказки:
  • ORDER (колонка [ASC | DESC] ). Указывает на сортировку данных в указанной колонке
  • ROWS_PER_BATCH = число. Указывает количество строк на одну группу (пакетное задание). Этот параметр аналогичен -b, но его не следует использовать в сочетании с -b. Параметр -b задает передачу указанной группы строк в SQL Server в виде одной транзакции. Если -b не указан, то весь файл данных передается на SQL Server в виде одной транзакции, а параметр ROWS_PER_BATCH используется для того, чтобы помочь SQL Server оценить объем нагрузки. Эта информация используется для оптимизации нагрузки внутренним образом
  • KILOBYTES_PER_BATCH = число. Указывает приблизительное количество килобайт на одну группу. Этот параметр аналогичен -b, но для указания размера группы используются килобайты, а не количество строк
  • TABLOCK. Указывает, что в течение массовой загрузки будет использоваться блокировка на уровне таблицы. Этот метод существенно повышает производительность загрузки за счет снижения конкуренции блокировок по данной таблице
  • CHECK_CONSTRAINTS. Указывает на необходимость проверки ограничений во время массовой загрузки. По умолчанию ограничения игнорируются
-i входной_файл Указывает имя файла ответов. Файл ответов содержит ответы на вопросы, задаваемые программой BCP, когда база данных работает в интерактивном режиме
-k Указывает, что в пустые колонки заносятся значения null, а не значения по умолчанию
-m максимум_ошибок Указывает, сколько ошибок должно произойти, чтобы BCP прекратила работу. Если этот параметр не указан, то используется значение по умолчанию, равное 10
-n Указывает, что BCP использует собственные (native) типы данных
-o выходной_файл Указывает выходной файл, в который поступает выходная информация программы BCP. Это обычный текстовый файл, который можно читать с помощью Notepad (Блокнота) или других утилит
-q Указывает, что для имен таблицы и представления требуются заключенные в кавычки идентификаторы, содержащие символы, отличные от стандарта ANSI, такие как пробел
-r разделитель_строк Указывает символ окончания строк. По умолчанию используется символ новой строки
-t ограничитель_полей Указывает ограничитель полей. По умолчанию используется символ табуляции (tab)
-v Выводит номер версии и информацию об авторских правах программы BCP
-w Указывает, что BCP использует символы Unicode
-C кодовая_страница Указывает кодовую страницу данных в файле данных
-E Указывает, что копируемый файл содержит значения для идентификации колонок
-F первая_строка Указывает первую строку, с которой начинается массовое копирование. Если этот параметр не указан, по первой строкой будет строка 1. Этот параметр полезно использовать, если вы хотите пропустить заголовочную информацию в файле данных
-L последняя_строка Указывает последнюю строку для выполнения массового копирования. Принятое по умолчанию значение 0 указывает, что последней строкой для копирования является последняя строка файла данных. Этот параметр полезно использовать, если вы хотите копировать только определенное количество строк
-N Указывает, что BCP использует собственные типы данных для несимвольных данных и Unicode для символьных данных
-P пароль Указывает пароль для идентификатора учетной записи подключения (login ID), который используется в параметре -U.
-R Указывает, что для денежных единиц, даты и времени используется региональный формат клиентской системы
-S имя_сервера Указывает имя сервера, на который выполняется копирование
-T Указывает, что используется доверяемое соединение. Если используется этот параметр, то переменные login_id и пароль не требуются; используются данные учетной записи пользователя сети
-U login_id Указывает login ID пользователя (идентификатор учетной записи подключения), под которым будет выполняться копирование данных
-V 60 | 65 | 70 Выполняет массовое копирование с использованием типов данных из более ранней версии SQL Server. Этот параметр следует использовать в сочетании с параметрами -c и -n
-6 Указывает, что BCP использует типы данных Microsoft SQL Server 6 или Microsoft SQL Server 6.5

Как видно из этой таблицы, для использования возможностей BCP можно задавать разнообразные параметры и комбинации этих параметров. Наилучшим способом ознакомления с этими параметрами является проработка примеров использования BCP, которые приводятся ниже.