我正在尝试使用openrowset
从内部部署的SQL Server连接到SQL Azure数据库,但它失败并出现错误。
我的查询是
SELECT a.*
FROM OPENROWSET('SQLNCLI', 'Server=sqlazureserver.database.windows.net;Database=dbname;User ID=username;Password=password;Connection Timeout=30;', 'select * from [dbo].[tablename]') AS a;
我得到的错误:
Msg 7399,Level 16,State 1,Line 11
链接服务器“(null)”的OLE DB提供程序“SQLNCLI11”报告错误。身份验证失败 Msg 7303,Level 16,State 1,Line 11
无法为链接服务器“(null)”初始化OLE DB提供程序“SQLNCLI11”的数据源对象。
我能够使用链接服务器成功连接,但我不想走那条路,因为我的连接字符串是动态的。
答案 0 :(得分:1)
从文档中,我可以看到截至目前,SQL Azure数据库不支持开放行集。
您可以使用分布式查询来完成相同的
,而不是使用openrowsetexec ('select * from table') at linkedserver
答案 1 :(得分:0)
检查this。适合我。 on onmm SQL添加到Azure SQL为链接。