Запуск BCP одновременно в облаке SQL Сервер - PullRequest
0 голосов
/ 29 апреля 2020

Недавно мы перенесли всю обработку из локальной SQL Server 2008 в облачную среду SQL Server 2016. Мы часто используем команды BCP для загрузки источников (ежедневные текстовые файлы в таблицы) и окончательного вывода (из таблицы в текстовые файлы).

В последнее время мы часто сталкиваемся с проблемой, когда мы выполняем 2 или более команд BCP одновременно, мы получаем ошибку

Процесс не может получить доступ к файлу, поскольку он используется другим процессом

Большинство команд BCP извлекает данные из разных папок и извлекает их в разные папки. К сожалению, мы никогда не сталкивались с этой проблемой, когда выполняли их на локальном SQL Server 2008.

Пожалуйста, дайте нам знать, как мы можем включить параллельное выполнение для сценария xp_cmdshell bcp на SQL Сервере.

Вы также можете увидеть ниже образец команды BCP

declare @bcp_command varchar(2000)

set @bcp_command = bcp db_name.dbo.table_sale out F:\drive\outbound\sale.txt -c -t"~" -S(OCI Server) -Uusername -r"\n" -Ppassword

exec xp_cmdshell @bcpcommand 
...