Skip to main content

Использование bcp для импорта и экспорта данных с SQL Server

Экспорт и импорт базы данных в phpmyadmin (Июнь 2026)

Экспорт и импорт базы данных в phpmyadmin (Июнь 2026)
Anonim

Команда массового копирования (bcp) Microsoft SQL Server предоставляет вам возможность вставлять большое количество записей непосредственно из командной строки. В дополнение к тому, чтобы быть полезным инструментом для любителей командной строки, утилита bcp является мощным инструментом для тех, кто стремится вставить данные в базу данных SQL Server из пакетного файла или другого программного метода. Существует множество способов получить данные в базе данных, но bcp является самым быстрым, когда он настроен с правильными параметрами.

Синтаксис BCP

Основной синтаксис для использования bcp:

BCP

где аргументы принимают следующие значения:

  • table_name это полное имя таблицы. Например, вы можете использовать inventory.dbo.fruits для вставки записей в таблицу плодов, принадлежащую владельцу базы данных в базе данных инвентаризации.
  • направление указывает, хотите ли вы импортировать («в направлении») или экспортировать («out») данные.
  • Имя файла это полный путь к файлу. Например, вы можете импортировать файл C: fruit inventory.txt.
  • Опции позволяют указать параметры для объемной операции. Например, вы можете указать максимальное количество ошибок, разрешенных параметром -m. Вы также можете использовать опцию -x для указания формата файла XML. Для получения полного списка обратитесь к документации Microsoft bcp.

Пример импорта BCP

Чтобы собрать все вместе, представьте, что у вас есть таблица фруктов в базе данных инвентаря, и вы хотите импортировать все записи из текстового файла, хранящегося на вашем жестком диске, в эту базу данных. Вы должны использовать следующий синтаксис команды bcp:

bcp inventory.dbo.fruits в "C: fruit inventory.txt" -c -T

Это дает следующий результат:

C: > bcp inventory.dbo.fruits в "C: fruit inventory.txt" -c -T

Запуск копии …

36 строк скопированы.

Размер сетевого пакета (байты): 4096

Clock Time (ms.) Всего: 16 Средний: (2250,00 строк в секунду).

C: >

Возможно, вы заметили две новые опции в этой командной строке. Параметр -c указывает, что формат файла файла импорта будет иметь текст с разделителями табуляции с каждой записью в новой строке. Параметр -T указывает, что bcp должен использовать проверку подлинности Windows для подключения к базе данных.

Пример экспорта BCP

Вы можете экспортировать данные из своей базы данных с помощью bcp, изменив направление операции с «in» на «out». Например, вы можете сбросить содержимое таблицы фруктов в текстовый файл с помощью следующей команды:

bcp inventory.dbo.fruits out "C: fruit inventory.txt" -c -T

Вот как это выглядит в командной строке:

C: > bcp inventory.dbo.fruits out "C: fruit inventory.txt" -c -T

Запуск копии …

Скопировано 42 строки.

Размер сетевого пакета (байты): 4096

Clock Time (ms.) Всего: 1 Средний: (42000,00 строк в секунду).

C: >

Это все, что нужно для команды bcp. Вы можете использовать эту команду из пакетных файлов или других программ с доступом к командной строке DOS для автоматизации импорта и экспорта данных из базы данных SQL Server.