- •I лабораторная работа Тема: Массовый импорт и экспорт данных, обработка ошибок
- •Основные сведения
- •Синтаксические обозначения в Transact-sql (Transact-sql)
- •Составные имена
- •Операции массового импорта и массового экспорта
- •Внутри- и внепроцессная операция
- •Файлы форматирования
- •Форматы данных для импорта или экспорта данных
- •Обработчик запросов и массовый импорт
- •Вопросы производительности
- •Управление пакетами для массового импорта данных
- •Ограничения
- •Вопросы производительности
- •Массовый экспорт или импорт документов sqlxml
- •Преобразование типов из символьного в десятичный
- •Пример импорта числового значения в экспоненциальном представлении
- •Делегирование учетных записей безопасности (Олицетворение)
- •А. Применение вертикальной черты в качестве признака конца столбца при импорте данных из файла
- •Б. Применение аргумента fire_triggers
- •В. Применение перевода строки в качестве признака конца строки
- •Дополнительные примеры
- •Программа bcp
- •Поддержка собственного формата файлов данных
- •Вычисляемые столбцы и столбцы типа timestamp
- •Указание идентификаторов, содержащих пробелы или кавычки
- •Проверка данных
- •Массовый экспорт или импорт документов sqlxml
- •А. Копирование строк таблицы в файл данных (с помощью доверительного соединения)
- •Б. Копирование строк таблицы в файл данных (в смешанном режиме проверки подлинности)
- •В. Копирование данных из файла в таблицу
- •Г. Копирование отдельного столбца в файл данных
- •Д. Копирование отдельной строки в файл данных
- •Е. Копирование данных из запроса в файл данных
- •Ж. Создание файла форматирования в формате, отличном от xml
- •З. Создание xml-файла форматирования
- •И. Применение файла форматирования для выполнения массового импорта данных с помощью программы bcp
- •Применение инструкции openrowset с параметром bulk
- •Массовый импорт данных sqlchar, sqlnchar или sqlbinary
- •Массовый экспорт или импорт документов sqlxml
- •А. Использование функции openrowset совместно с инструкцией select и поставщиком ole db для собственного клиента sql Server
- •Б. Использование поставщика ole db для Jet (Майкрософт)
- •В. Использование функции openrowset и другой таблицы в предложении inner join
- •Г. Использование функции openrowset для массовой вставки данных из файла в столбец varbinary(max)
- •Д. Использование поставщика bulk функции openrowset совместно с файлом форматирования для получения строк из текстового файла
- •Дополнительные примеры
- •Примеры массового импорта и экспорта xml-документов
- •Б. Массовый импорт xml-данных в существующую строку
- •Образец файла данных
- •Пример б
- •В. Массовый импорт xml-данных из файла, содержащего dtd
- •Образец таблицы
- •Образец файла форматирования
- •Пример г
- •Д. Массовый экспорт xml-данных
- •Контрольные вопросы к I лабораторной работе
- •Доп. Ссылки:
Образец таблицы
При выполнении массового импорта или
экспорта XML-документа следует использовать
признаки
конца поля, которые могут
отсутствовать в некоторых документах,
например последовательность из четырех
значений NULL (\0), заканчивающаяся
буквой z: \0\0\0\0z.
В этом примере показано, как использовать
эти признаки конца поля в образце таблицы
xTable. Чтобы создать этот образец
таблицы, используйте следующую инструкцию
CREATE TABLE:
USE tempdb
CREATE TABLE xTable (xCol xml);
GO
Образец файла форматирования
Признак конца поля должен быть указан
в файле форматирования. В примере Г
создается файл форматирования Xmltable.fmt
в формате, отличном от XML, который содержит
следующее:
9.0
1
1 SQLBINARY 0 0 "\0\0\0\0z" 1 xCol ""
Этот файл форматирования можно
использовать для массового импорта
XML-документов в таблицу xTable при
помощи команды bcp или инструкции
BULK INSERT или INSERT ... SELECT * FROM
OPENROWSET(BULK...).
Пример г
В этом примере используется файл
форматирования Xmltable.fmt в инструкции
BULK INSERT для импорта содержимого
файла XML-данных с именем Xmltable.dat.
BULK INSERT xTable
FROM 'C:\Xmltable.dat'
WITH (FORMATFILE = 'C:\Xmltable.fmt');
GO
[В начало]
Д. Массовый экспорт xml-данных
В следующем примере для выполнения
массового экспорта XML-данных из таблицы,
созданной в предыдущем примере при
помощи того же XML-файла форматирования,
используется программа bcp. В
следующей команде bcp<server_name>
и <instance_name> являются заполнителями,
которые должны быть заменены
соответствующими значениями:
bcp bulktest..xTable out a-wn.out -N -T -S<server_name>\<instance_name>
Примечание |
SQL Server не сохраняет кодировку XML, если XML-данные постоянно хранятся в базе данных. Поэтому оригинальная кодировка полей XML недоступна при экспорте XML-данных. Для экспорта данных SQL Server использует кодировку UTF-16. |
Контрольные вопросы к I лабораторной работе
Что такое четырехчастное имя объекта и как записывается?
Какие методы используются для массового импорта и экспорта данных?
Что такое внутри-процессная и вне-процессная операция? Как выполняются?
Какие достоинства и недостатки внутри-процессной и вне-процессной операции?
Что такое файлы форматирования и для чего они используются?
Какие типы файлов форматирования поддерживаются и какими версиями SQL Server?
Чем можно сформировать файл форматирования?
При вводе большое объема данных как можно повысить производительность?
Что выполняет операция BULK INSERT? ПРиведите синтаксис операции.
Что такое 'data_file' и как записывается ?
Для чего используются пакеты при массовом импорте данных
Как задать размер пакета или размер файла данных?
Как произвести приблизительную оценку пакета данных?
Как обрабатываются проверочные CHECK ограничения при массовых операциях?
Для чего используются параметры CODEPAGE и FIELDTERMINATOR?
Для чего используются параметр DATAFILETYPE ?
Доп. Ссылки:
http://technet.microsoft.com/ru-ru/library/ms175937%28v=sql.105%29.aspx
Операции массового импорта и массового экспорта
Основные рекомендации по массовому импорту данных
Массовый импорт и экспорт данных с помощью программы bcp
Массовый импорт данных при помощи инструкции BULK INSERT или OPENROWSET(BULK...)
Создание таблицы HumanResources.myTeam
Форматы данных для импорта или экспорта данных
Файлы форматирования для импорта или экспорта данных
Примеры массового импорта и экспорта XML-документов
Сценарии массового импорта и экспорта данных
Оптимизация производительности массового импорта данных
