.BCP вариант №
BCP (формат массового копирования) — это формат технических данных Microsoft SQL Server, который определяет структуры данных для хранения значений различных типов данных базы данных для импорта/экспорта. Формат полностью определяет интерпретацию каждого столбца данных, чтобы можно было прочитать набор значений, указанных в файле данных. Утилита BCP использует формат файла BCP для чтения данные из такого файла и идентифицировать его.
Формат файла BCP
Файл формата BCP представляет собой XML-документ, определяющий порядок столбцов, имя и тип данных. Это позволяет пользователям импортировать / экспортировать большие объемы данных из файла данных, указав эти поля. Это полезно при массовом импорте значений данных из файлов данных. Количество и порядок полей данных в файле данных могут отличаться от таковых в столбцах целевой таблицы. В этом случае на помощь приходит файл формата данных BCP, указывающий порядок и тип столбцов для импорта данных.
Структура файла формата представлена в следующем формате.
<BCPFORMAT ...>
<RECORD>
<FIELD ID = "fieldID" xsi:type = "fieldType" [...] />
</RECORD>
<ROW>
<COLUMN SOURCE = "fieldID" NAME = "columnName" xsi:type = "columnType" [...] />
</ROW>
</BCPFORMAT>
Типы данных BCP
Тип данных | Диапазон | Представление |
---|---|---|
BigInt | -263 (-9 223 372 036 854 775 808) по 263-1 (9 223 372 036 854 775 807) | BigInt = ["-"]1*19DIGIT |
Двоичный | от 1 до 8000 байт | формат строки Unicode в шестнадцатеричном кодировании Binary = 32000OCTET |
Бит | 0 или 1 | простая строка Юникода Бит = “0” / “1” |
Char | от 1 до 8000 | Формат строки Unicode, Char = 16000OCTET |
CLRUDT | VarBinary | CLRUDT = 0*nOCTET, где n = 4 x (2 147 483 647) |
Дата | от 0001-01-01 до 9999-12-31 | формат строки ГГГГ-ММ-ДД |
DateTime | 1753-01-01 00:00:00.000 до 9999-12-31 23:59:59.997 | Юникод ГГГГ-ММ-ДД чч:мм:сс[.ннн] строковый формат |
DateTime2 | 0001-01-01 00:00:00.0000000 до 9999-12-31 23:59:59.9999999. | Юникод ГГГГ-ММ-ДД чч:мм:сс[.ннннннн] строковый формат |
DateTimeOffset | 0001-01-01 00:00:00.0000000 по 9999-12-31 23:59:59.9999999 в часовом поясе всемирного координированного времени (UTC) | Юникод ГГГГ-ММ-ДД чч:мм:сс[.нннннн] [{+ |
Десятичный | -1038 + 1 до 1038 – 1 | Формат строки Unicode Decimal = ["-"] 0*38DIGIT ["."0*38DIGIT] |
Плавающая | -1,79E+308 до -2,23E-308; 0; от 2.23E-308 до 1.79E+308 | Формат строки Unicode |
Изображение | последовательность байтов в диапазоне от 0 до 231 – 1 (2 147 483 647) | формат строки Unicode в шестнадцатеричном кодировании |
Int | -231 (-2 147 483 648) до 231 – 1 (2 147 483 647) | формат строки Unicode |