Массовый импорт и экспорт данных (SQL Server)
SQL Server поддерживает массовый экспорт данных (массовых данных) из таблиц SQL Server и импорт массовых данных в таблицу SQL Server или несекционированное представление. Массовый импорт и массовый экспорт необходимы для эффективной передачи данных между SQL Server и разнородными источниками данных. Массовый экспорт означает копирование данных из таблицы SQL Server в файл данных. Массовый импорт означает загрузку данных из файла данных в таблицу SQL Server . Например, можно экспортировать данные из приложения Microsoft Excel в файл данных, а затем выполнить массовый импорт данных в таблицу SQL Server .
В этом разделе.
Общие сведения о массовом импорте и массовом экспорте
В настоящем разделе приведен перечень и дано краткое сравнение различных доступных методов массового импорта и экспорта данных. В разделе также приведены сведения о файлах форматирования.
В этом разделе:
Методы массового импорта и экспорта данных
SQL Server поддерживает массовый экспорт данных из таблиц SQL Server и массовый импорт данных в таблицы или несекционированные представления SQL Server . Доступны следующие основные методы.
Метод | Описание | Импортирует данные | Экспортирует данные |
---|---|---|---|
bcp, программа | Программа командной строки (Bcp.exe), массово экспортирующая и импортирующая данные и создающая файлы форматирования. | Да | Да |
BULK INSERT, инструкция | Инструкция Transact-SQL, которая импортирует данные непосредственно из файла данных в таблицу базы данных или несекционированное представление. | Да | нет |
Инструкция INSERT ... Инструкция SELECT * FROM OPENROWSET(BULK...) | Инструкция Transact-SQL, которая использует поставщик наборов строк OPENROWSET для массового импорта данных в таблицу SQL Server путем указания функции OPENROWSET(BULK...) для выбора данных в инструкции INSERT. | Да | Нет |
Важно!
Значения файлов с разделителями-запятыми (CSV) не поддерживаются операциями массового импорта SQL Server. Однако в некоторых случаях CSV-файл можно использовать в качестве файла данных для массового импорта данных в SQL Server. Обратите внимание, что признаком конца поля CSV-файла не обязательно должна быть запятая. Дополнительные сведения см. в разделе Подготовка данных к массовому экспорту или импорту (SQL Server).
Файлы форматирования
Служебная программа bcp , BULK INSERT и INSERT ... SELECT * FROM OPENROWSET(BULK...) поддерживают использование специализированного файла форматирования , в котором хранятся сведения о формате для каждого поля в файле данных. Файл форматирования также может содержать сведения о соответствующей таблице SQL Server. Файл форматирования может быть использован с целью предоставления всех сведений о форматировании, необходимых для массового экспорта данных из экземпляра SQL Serverи массового импорта данных в него.
Файлы форматирования обеспечивают гибкость при интерпретации данных, существующих в файле данных, в процессе импорта и при форматировании данных в файле данных в процессе экспорта. Эта гибкость исключает необходимость записи специализированного кода для интерпретации данных или изменения формата данных для особых нужд в SQL Server или внешних приложениях. Таким образом, например, если экспортируются данные для загрузки в приложение, файлу данных потребуются значения с разделительными-запятыми. Для вставки запятых в качестве признаков конца полей можно использовать файл форматирования.
В SQL Server поддерживаются файлы форматирования двух видов: XML-файл форматирования и файл форматирования в формате, отличном от XML.
Служебная программа bcp — это единственное средство, которое может создать файл форматирования. Дополнительные сведения см. в статье Создание файла форматирования (SQL Server). Дополнительные сведения об использовании файлов форматирования см. в статье Файлы форматирования для импорта или экспорта данных (SQL Server).
Примечание
В тех случаях, когда файл форматирования не задан во время выполнения операций массового экспорта или импорта, можно переопределить применяемые по умолчанию параметры форматирования в командной строке.
Связанные задачи
Импорт и экспорт массовых данных с помощью служебной программы bcp (SQL Server)
Массовый импорт данных при помощи инструкции BULK INSERT или OPENROWSET(BULK...) (SQL Server)
Сохранение значений идентификаторов при массовом импорте данных (SQL Server)
Подготовка данных к массовому экспорту или импорту (SQL Server)
Использование файла форматирования
Использование файла форматирования для массового импорта данных (SQL Server)
Использование файла форматирования для пропуска поля данных (SQL Server)
Пропуск столбца таблицы с помощью файла форматирования (SQL Server)
Использование форматов данных для массового импорта или экспорта
Импорт данных в собственном и символьном формате из предыдущих версий SQL Server
Использование символьного формата для импорта или экспорта данных (SQL Server)
Использование собственного формата для импорта или экспорта данных (SQL Server)
Использование символьного формата Юникода для импорта и экспорта данных (SQL Server)
Использование собственного формата Юникода для импорта или экспорта данных (SQL Server)
Задание форматов данных для совместимости с помощью программы bcp
Определение длины префикса в файлах данных с помощью программы bcp (SQL Server)
Указание типа файлового хранилища с помощью программы bcp (SQL Server)
См. также:
Предварительные условия для минимального протоколирования массового импорта данных
Файлы форматирования для импорта или экспорта данных (SQL Server)
Примеры массового импорта и экспорта XML-документов (SQL Server)
SQL Server Integration Services
Копирование баз данных на другие серверы
Выполнение массовой загрузки XML-данных (SQLXML 4.0)
Выполнение операций массового копирования
Программа bcp
BULK INSERT (Transact-SQL)
Файлы форматирования для импорта или экспорта данных (SQL Server)
OPENROWSET (Transact-SQL)