昨天换了服务器,SQL Server也有2008换成了2012。 把2008的数据库备份,然后到2012上恢复,然后把网站的Web.Config的链接字符串改掉。 运行,成功,一切完美。 但是一个excel的VBA却无法链接到新数据库 一直提示: Run-time error ‘-2147467259 (80004005)’: [DBNETLIB][ConnectionOpen (SECDoClientHandshake()).]SSL Security error.
搜索了很多资料,都是说要改注册表的SSL1,SSL1.1, SSL1.2,但是并没有什么卵用。最后经过无数次试验,改一下链接字符串就OK了。
老的链接字符串: ServerConnString = “Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;PWD=xxxxxx;Initial Catalog=MyDB;Data Source=ServerName”
试着改成了 ServerConnString = “Provider=SQLNCLI11;Persist Security Info=False;User ID=sa;PWD=xxxxxx;Initial Catalog=MyDB;Data Source=ServerName” 本地链接成功,然后就把新版本的excel发布出去了。结果用户反馈,链接不上。 然后又试着改成下面的字符串 ServerConnString = “Driver={sql server};server=ServerName;uid=sa;PWD=xxxxxx; database=MyDB; AutoTranslate=False” 完美解决问题。