Поделиться через


Массовый импорт и экспорт данных (SQL Server)

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

SQL Server поддерживает массовый экспорт данных (массовых данных) из таблицы SQL Server и импорт массовых данных в таблицу SQL Server или непартийное представление.

  • Массовое экспортирование относится к копированию данных из таблицы SQL Server в файл данных.
  • Массовое импортирование относится к загрузке данных из файла данных в таблицу SQL Server. Например, можно экспортировать данные из приложения Microsoft Excel в файл данных, а затем массовый импорт данных в таблицу SQL Server.

Методы массового импорта и экспорта данных

SQL Server поддерживает массовый экспорт данных из таблицы SQL Server и массового импорта данных в таблицу SQL Server или непартийное представление. Доступны следующие основные методы.

Метод Description Импортирует данные Экспортирует данные
bcp, программа Программа командной строки (Bcp.exe), массово экспортирующая и импортирующая данные и создающая файлы форматирования. Да Да
Инструкция BULK INSERT Инструкция Transact-SQL, которая импортирует данные непосредственно из файла данных в таблицу базы данных или непартиментное представление. Да Нет
Инструкции INSERT ... SELECT * FROM OPENROWSET(BULK...). Инструкция Transact-SQL, которая использует поставщика набора строк OPENROWSET для массового импорта данных в таблицу SQL Server, указав функцию OPENROWSET(BULK...) для выбора данных в инструкции INSERT. Да Нет
мастер импорта и экспорта SQL Server Мастер создает простые пакеты, которые импортируют и экспортируют данные в многочисленных распространенных форматах, включая базы данных, электронные таблицы и текстовые файлы. Да Да

Внимание

Правила использования файла данных с разделителями-запятыми (CSV) в качестве файла данных для массового импорта данных в SQL Server см. в статье Подготовка данных к массовому экспорту или импорту (SQL Server).

Примечание.

Для импорта и экспорта файлов с разделителями Azure Synapse Analytics поддерживает только служебную программу bcp.

Файлы форматирования

Программа bcp, BULK INSERTи INSERT ... SELECT * FROM OPENROWSET(BULK...) поддерживают использование специализированного файла форматирования , в котором хранятся сведения о форматировании для каждого поля в файле данных. Файл формата также может содержать сведения о соответствующей таблице SQL Server. Файл формата можно использовать для предоставления всех сведений о формате, необходимых для массового экспорта данных из и массового импорта данных в экземпляр SQL Server.

Внимание

BCP нельзя использовать для импорта данных из Хранилище BLOB-объектов Azure или экспорта данных в База данных SQL Azure. Используйте BULK INSERT или OPENROWSET для импорта или экспорта в Хранилище BLOB-объектов Azure.

Файлы форматирования обеспечивают гибкость при интерпретации данных, существующих в файле данных, в процессе импорта и при форматировании данных в файле данных в процессе экспорта. Эта гибкость устраняет необходимость написания кода специального назначения для интерпретации данных или переформатирования данных в соответствии с конкретными требованиями SQL Server или внешним приложением. Таким образом, например, если экспортируются данные для загрузки в приложение, файлу данных потребуются значения с разделительными-запятыми. Для вставки запятых в качестве признаков конца полей можно использовать файл форматирования.

SQL Server поддерживает два типа файлов форматирования: XML-файлы форматирования и файлы форматирования, отличные от XML.

Программа bcp — это единственное средство, позволяющее создать файл форматирования. Дополнительные сведения см. в статье Создание файла форматирования (SQL Server). Дополнительные сведения об использовании файлов форматирования см. в статье Файлы форматирования для импорта или экспорта данных (SQL Server).

Примечание.

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

См. также
Подготовка данных к массовому экспорту или импорту (SQL Server)
Форматы данных для массового экспорта или импорта (SQL Server)
 ● Использование собственного формата для импорта или экспорта данных (SQL Server)
 ● Использование символьного формата для импорта или экспорта данных (SQL Server)
 ● Использование собственного формата Юникода для импорта или экспорта данных (SQL Server)
 ● Использование символьного формата Юникода для импорта и экспорта данных (SQL Server)
 • Импорт данных собственного и символьного формата из более ранних версий SQL Server
Указание форматов данных для совместимости с помощью программы bcp (SQL Server)
 ● Укажите тип хранилища файлов с помощью bcp (SQL Server)
 • Укажите длину префикса в файлах данных с помощью bcp (SQL Server)
 • Укажите длину поля с помощью bcp (SQL Server)
 ● Указание терминаторов полей и строк (SQL Server)
Сохранение значений NULL или использование значений по умолчанию при массовом импорте данных (SQL Server)
Сохранение значений идентификаторов при массовом импорте данных (SQL Server)
Файлы форматирования для импорта или экспорта данных (SQL Server)
 ● Создание файла форматирования (SQL Server)
 ● Использование файла форматирования для массового импорта данных (SQL Server)
 ● Использование файла форматирования для пропуска столбца таблицы (SQL Server)
 ● Использование файла форматирования для пропуска поля данных (SQL Server)
 ● Использование файла форматирования для сопоставления столбцов таблицы с полями файла данных (SQL Server)

Дополнительные сведения