Ошибка разрешений BCP при использовании запроса с SQL Azure - PullRequest
0 голосов
/ 07 февраля 2012

Я пытаюсь запросить данные у одного database1..table и импортировать его в другой database2..table.database2..table уже содержит некоторые данные, поэтому мне нужно отфильтровать их.Я вызываю эту команду:

bcp "SELECT * FROM Foo.dbo.Bar WHERE id > 10000" queryout ./Bar.txt -N -U user@machine -S tcp:hash.database.windows.net -P password

Error: SQLState = 37000, NativeError = 4060 Error = [Microsoft][SQL Server Native Client 11.0][SQL Server]Cannot open database "master" requested by the login. The login failed.

Поскольку у пользователя @ machine нет доступа к базе данных master, запрос не выполняется,Обратите внимание, что если я использую bcp Foo.dbo.Bar out ./Bar.txt... вместо вышеприведенного, это работает, поскольку он никогда не пытается открыть базу данных master.

Это экземпляр SQL Azure, поэтому я не могу связать серверы вместе.

Итак: как я могу сделать этот фильтр на свежесть данных в Foo.dbo.Bar, когда BCP никогда не пытается подключиться к master?

1 Ответ

2 голосов
/ 07 февраля 2012

Согласно документации , необходимо указывать параметр -d при использовании запроса с SQL Azure.

...