【发布时间】:2015-05-27 10:12:21
【问题描述】:
我正在尝试使 Delphi 应用程序与 AlwaysOn 解决方案一起使用。我在谷歌上发现我必须在连接字符串中使用MultiSubnetFailover=True。
应用程序在 Delphi XE3 中编译并使用TADOConnection。
如果我在连接字符串中使用Provider=SQLOLEDB,应用程序会启动,但看起来MultiSubnetFailover=True 无效。
如果我使用Provider=SQLNCLI11(我在 Google 上发现 OLEDB 不支持 AlwaysOn 解决方案,我必须使用 SQL Native 客户端)我在尝试打开连接时得到无效属性。
连接字符串是:
Provider=SQLOLEDB.1;Password="password here";Persist Security Info=True;User ID=sa;Initial Catalog="DB here";Data Source="SQL Instance here";MultiSubnetFailover=True
我是否必须在 Delphi 上升级到较新版本才能使用此故障转移解决方案,还是连接字符串中缺少某些内容?
【问题讨论】:
-
您在连接字符串中写了
SQLOLEDB.1,但前面提到您需要使用本机客户端SQLNCLI11作为Provider是不是错字?这可以解释无效属性错误... -
你是对的。似乎不支持OLEDB,所以必须使用SQL Native Client,它的连接字符串语法不同(connectionstrings.com/…)。
标签: delphi delphi-xe3 alwayson adoconnection