Получать данные из Microsoft Azure с использованием SQL Server без использования связанного сервера - PullRequest
0 голосов
/ 14 мая 2019

У меня есть данные, хранящиеся в Microsoft Azure, и я хочу получить и сохранить их на сервере Microsoft SQL Server 2008 r2 без создания связанного сервера.

Попробуйте

Шаг 1. Настройте параметры брандмауэра в Azure, добавив IP-адрес клиента.

Шаг 2. Выполнение следующего запроса из SQL Server:

EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO

EXEC sp_configure 'ad hoc distributed queries', 1
RECONFIGURE
GO

SELECT * 
FROM  OPENROWSET('MSDASQL', 'Driver={SQL SERVER}; Server=server.database.windows.net;Database=DBName;UID=Admin; PWD=********;', 'select * from tablename')

Примечание : вышеописанные действия работают нормально, но через некоторое время появляется следующая ошибка:

Невозможно инициализировать объект источника данных поставщика OLE DB "MSDASQL" для связанного сервера "(null)".

1 Ответ

0 голосов
/ 14 мая 2019

Драйвер ODBC «SQL Server», поставляемый с Windows, устарел и не может использоваться с базой данных SQL Azure.Обычно лучше по возможности использовать OLE DB со связанными серверами вместо ODBC.

Ниже приведен пример использования драйвера OLE DB для собственного клиента SQL Server:

SELECT *
FROM OPENROWSET('SQLNCLI', 'Server=server.database.windows.net;Database=DBName;UID=Admin;PWD=********, 'select * from tablename;')
...