我正在尝试使用 OLEdb 连接到 SQL Azure。当我这样做时,我收到错误:
- 来源: Microsoft SQL Server Native Client 10.0
- 描述: TCP 提供者:没有这样的主机是已知的。
- SQL 状态: 08001
- 本机错误: 11001
我可以使用以下方式连接:
- SQL Server 管理工作室,和
- 红门 SQL 比较
所以这不像是防火墙、服务器或凭据问题。
但我无法使用 OLEDb 提供程序从本机应用程序连接自己。
首先我尝试了一个完全错误的用户名,并且没有密码
Provider=SQLNCLI10;数据源=tcp:hyperion.database.windows.net,1433;初始目录=Scratch;用户ID= adlfk24lksdfj@hyperion;
给出(预期的)错误:
来源: Microsoft SQL Server Native Client 10.0
描述:用户“adlfk24lksdfj”登录失败。
SQLState: 28000
本机错误: 18456
然后我给它一个有效的用户名,但没有密码:
Provider=SQLNCLI10;数据源=tcp:hyperion.database.windows.net,1433;初始目录=Scratch;用户ID= iboyd@hyperion;
这将返回(预期的)错误:
来源: Microsoft SQL Server Native Client 10.0
描述:用户“iboyd”登录失败。
SQLState: 28000
本机错误: 18456
然后我给了一个无效的密码:
Provider=SQLNCLI10;数据源=tcp:hyperion.database.windows.net,1433;初始目录=Scratch;用户ID= iboyd@hyperion;密码= trubadour;
这将返回预期的错误:
来源:Microsoft SQL Server Native Client 10.0
描述:用户“iboyd”登录失败。
SQLState:28000
本机错误:18456
然后是有效的连接字符串
然后我给它正确的1用户名和密码:
Provider=SQLNCLI10;数据源=tcp:hyperion.database.windows.net,1433;初始目录=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
- 为什么 Microsoft 不支持到 SQL Azure 的 OLE DB 连接?
- Microsoft Azure Technical Evangalist: 您可以使用它,但尚未针对所有情况进行全面测试。本质上,它应该适用于大多数事情,但可能有一些边缘情况它不起作用。在我们记录这些案例之前,它仍然不受支持。话虽如此,如果您要使用并遇到错误,我们很想知道它并优先解决它。
- Azure 连接字符串异常“发生网络相关或特定于实例的错误”