Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо:SQL Server
База данных SQL Azure
Управляемый экземпляр SQL Azure
Azure Synapse Analytics
Платформа аналитики (PDW)
Тип файла хранилища описывает, каким образом данные хранятся в файле данных. Данные можно экспортировать в файл данных как тип таблицы базы данных (собственный формат), в его символьном представлении (символьный формат) или как любой тип данных, для которого поддерживается неявное преобразование; например, копирование smallint как int. Пользовательские типы данных экспортируются как их базовые типы.
Запрос bcp для типа хранилища файлов
Если интерактивная команда bcp содержит параметр in или out без параметра файла формата (-f) или параметра формата данных (-n, -c, -w, -N), команда запрашивает тип хранилища файлов для каждого поля данных, как указано ниже.
Enter the file storage type of field <field_name> [<default>]:
Ответ на такое приглашение зависит от выполняемой задачи.
Чтобы массово экспортировать данные из экземпляра Microsoft SQL Server в файл данных в максимально компактном хранилище (собственный формат данных), примите типы файлов по умолчанию, предоставляемые bcp. Список собственных типов файловых хранилищ см. в разделе «Собственные типы файловых хранилищ» далее в этом подразделе.
Чтобы массово экспортировать данные из экземпляра SQL Server в файл данных в символьном формате, укажите char в качестве типа хранилища файлов для всех столбцов таблицы.
Чтобы массово импортировать данные в экземпляр SQL Server из файла данных, укажите тип хранилища файлов в виде char для типов, хранящихся в формате символов, и для данных, хранящихся в собственном формате данных, укажите один из типов хранилища файлов, как это необходимо:
Тип файла хранилища Введите в командной строке char c[har]varchar c[har]nchar wnvarchar wtext T[ext]ntext2 Wbinary xvarbinary xИзображение I[mage]datetime d[ate]smalldatetime Dtime teдата dedatetime2 d2datetimeoffset doдесятичное число nnumeric nfloat f[loat]реальный rInt i[nt]bigint B[igint]smallint s[mallint]tinyint t[inyint]money m[oney]smallmoney Mbit b[it]uniqueidentifier usql_variant V[ariant]timestamp xUDT (определяемый пользователем тип данных) UXML Xvector v[ector]*Взаимодействие длины поля, длины префикса и терминаторов определяет объем места хранения, выделенного в файле данных для несимвольных данных, экспортируемых в качестве типа хранилища файлов char.
** Типы данных ntext, текста и изображения будут удалены в будущей версии SQL Server. Следует избегать использования этих типов данных при новой разработке и запланировать изменение приложений, использующих их в настоящий момент. Вместо них следует использовать типы данных nvarchar(max), varchar(max)и varbinary(max) .
Типы хранилища собственных файлов
Все собственные типы файловых хранилищ записаны в файле форматирования как соответствующие типы данных основных файлов.
| Тип файла хранилища | Тип данных файла хоста |
|---|---|
| char | SQLCHAR |
| varchar | SQLCHAR |
| nchar | SQLNCHAR |
| nvarchar | SQLNCHAR |
| text | SQLCHAR |
| ntext | SQLNCHAR |
| binary | SQLBINARY |
| varbinary | SQLBINARY |
| Изображение | SQLBINARY |
| datetime | SQLDATETIME |
| smalldatetime | SQLDATETIM4 |
| десятичное число | SQLDECIMAL |
| numeric | SQLNUMERIC |
| float | SQLFLT8 |
| реальный | SQLFLT4 |
| int | SQLINT |
| bigint | SQLBIGINT |
| smallint | SQLSMALLINT |
| tinyint | SQLTINYINT |
| money | SQLMONEY |
| smallmoney | SQLMONEY4 |
| bit | SQLBIT |
| uniqueidentifier | SQLUNIQUEID |
| sql_variant | SQLVARIANT |
| timestamp | SQLBINARY |
| UDT (определяемый пользователем тип данных) | SQLUDT |
| vector | SQLVECTOR |
Файлы данных, хранящиеся в символьном формате, используют char в качестве типа хранилища файлов. Таким образом, для символьных файлов данных SQLCHAR — это единственный тип данных, допустимый в файле форматирования.
Невозможно массово импортировать данные в текстовые, ntext и столбцы изображений , имеющие
DEFAULTзначения.
Дополнительные рекомендации по типам хранилища файлов
При массовом экспорте данных из экземпляра SQL Server в файл данных:
Вы всегда можете указать char в качестве типа хранилища файлов, за исключением столбцов типа вектор, которые не поддерживают преобразование в char и обратно.
если указан тип файлового хранилища, представляющий недопустимое неявное преобразование, то работа bcp завершится ошибкой. Например, хотя можно указать int для данных smallint , если задать smallint для данных int , итогом станет ошибка переполнения;
Если нехарактерные типы данных, такие как float, money, datetime или int, хранятся в качестве типов баз данных, данные записываются в файл данных в собственном формате SQL Server.
Примечание.
После интерактивного заполнения всех полей в команде bcp появится запрос на сохранение введенных ответов для каждого поля в файле форматирования в формате, отличном от XML. Дополнительные сведения о файлах форматирования, отличных от XML, см. в разделе "Файлы форматирования не XML" (SQL Server).