Команда вставки файла BCP не восстанавливает фактическое значение столбца Identity - PullRequest
0 голосов
/ 31 октября 2019

Сценарий вставки BCP не восстанавливает значения столбца Identity, скопированные в файл BCP, вместо этого SQL Server автоматически назначает уникальные значения на основе начальных значений и значений приращения, указанных в процессе восстановления.

Создание файла формата BCP -

BCP [SourceDatabase].[abc].[TableName] format nul -T -c -f Filename.fmt -S SourceSqlServer

Создание файла данных BCP -

BCP "EXEC [abc].[GetData]" queryout "C:\Filename.bcp" -S SourceSqlServer -d SourceDatabase -T **-E** -c

Восстановление данных в таблице -

BCP [abc].[TableName] in "C:\Filename.bcp" -f Filename.fmt -S SourceSqlServer -d SourceDatabase -T

Я хочу вставить значения столбца Identity так же, какв файле BCP. Любые предложения приветствуются.

1 Ответ

1 голос
/ 31 октября 2019

Вам нужно будет добавить ключ -E по умолчанию, bcp назначает новые столбцы идентификаторов.

https://docs.microsoft.com/sr-latn-rs/sql/relational-databases/import-export/keep-identity-values-when-bulk-importing-data-sql-server?view=sql-server-2014

...