【发布时间】:2016-07-22 18:19:34
【问题描述】:
我正在尝试使用 OLEdb 连接到 SQL Azure。当我这样做时,我得到了错误:
- 来源: Microsoft SQL Server Native Client 10.0
- 描述: TCP 提供者:没有这样的主机是已知的。
- SQLState: 08001
- NativeError: 11001
我可以使用以下方式连接:
- SQL Server Management Studio 和
- Red-Gate SQL 比较
所以这不像是防火墙、服务器或凭据问题。
但我无法使用 OLEdb 提供程序从本机应用程序连接自己。
首先我尝试了一个完全错误的用户名,并且没有密码
Provider=SQLNCLI10;Data Source=tcp:hyperion.database.windows.net,1433;Initial Catalog=Scratch;用户 ID=adlfk24lksdfj@hyperion;
给出(预期的)错误:
来源: Microsoft SQL Server Native Client 10.0
说明:用户“adlfk24lksdfj”登录失败。
SQLState: 28000
NativeError: 18456
然后我给它一个有效的用户名,但没有密码:
Provider=SQLNCLI10;Data Source=tcp:hyperion.database.windows.net,1433;Initial Catalog=Scratch;用户 ID=iboyd@hyperion;
返回(预期的)错误:
来源:Microsoft SQL Server Native Client 10.0
说明:用户“iboyd”登录失败。
SQLState: 28000
NativeError: 18456
然后我给一个无效的密码:
Provider=SQLNCLI10;Data Source=tcp:hyperion.database.windows.net,1433;Initial Catalog=Scratch;用户 ID=iboyd@hyperion;密码=trubadour;
返回预期的错误:
来源:Microsoft SQL Server Native Client 10.0
说明:用户“iboyd”登录失败。
SQLState:28000
本机错误:18456
然后是有效的连接字符串
然后我给它正确的1用户名和密码:
Provider=SQLNCLI10;Data Source=tcp:hyperion.database.windows.net,1433;Initial Catalog=Scratch;用户 ID=iboyd@hyperion;密码=correcthorsebatterystaple;
在暂停 15 秒后,我得到了意想不到的荒谬错误:
来源: Microsoft SQL Server Native Client 10.0
描述: TCP 提供程序:未知此类主机。
SQLState:08001强>
NativeError: 11001
1当然这些不是我的实际凭据。但是有没有可以测试连接的免费测试 SQL Azure 数据库?
阅读奖励
- ConnectionStrings.com: Sql Azure
- Why doesn't Microsoft support OLE DB connections to SQL Azure?
- Microsoft Azure Technical Evangalist: 您可以使用它,但它并未针对所有情况进行全面测试。从本质上讲,它应该适用于大多数事情,但可能有一些边缘情况它不起作用。在我们记录这些案例之前,它仍然不受支持。话虽如此,如果您使用并遇到错误,我们很乐意了解它并优先解决。
- Azure connection string exception "network-related orinstance-specific error occurred"
【问题讨论】:
-
你可以尝试从连接字符串中删除Tcp吗:tcp:hyperion.database.windows.net,1433
标签: oledb azure-sql-database sqlncli