【问题标题】:ODBC Driver ignores port parameters for SQL Anywhere 10ODBC 驱动程序忽略 SQL Anywhere 10 的端口参数
【发布时间】:2019-01-14 19:58:34
【问题描述】:

我正在尝试使用 C# 中的 ODBC 连接连接到 SQL Anywhere 10 数据库。这可以与所有默认参数很好地连接,但是每当我尝试指定端口或 IP 地址时,它看起来都被完全忽略了

我的连接字符串是:

Driver={SQL Anywhere 10};uid=username;pwd=password;

这在连接到列出的第一个数据库时有效。我想连接到计算机上运行的第二个数据库,该数据库位于不同的端口上。我试过了:

Driver={SQL Anywhere 10};uid=username;pwd=password;port=1234;

Driver={SQL Anywhere 10};uid=username;pwd=password;LINKs=tcpip(host=192.168.1.1:1234)

Driver={SQL Anywhere 10};uid=username;pwd=password;DataSource=localhost:1234;

这些都没有改变连接,甚至连接失败

用于指定端口的正确字符串是什么?

或者除了System.Data.ODBC.ODBCConnection,我还能使用什么其他方法来连接我可以指定端口的位置?

【问题讨论】:

  • 尝试用逗号分隔:localhost,1234

标签: c# odbc sap sqlanywhere


【解决方案1】:

看起来你只是在构建连接属性来尝试在字符串中......

尝试查看您正在使用的驱动程序的文档 --

Driver={SQL Anywhere 10};UID=<user name>;DatabaseName=<database name>;EngineName=<database engine name>;AutoStop=YES;Integrated=NO;EncryptedPassword=3ff6c3114e;Debug=NO;DisableMultiRowFetch=NO;CommLinks='TCPIP{HOST=<database server name>;PORT=<port number for remote connections>}';Compress=NO

大部分属性都是可选的,所以这里有一个可能对你有用的简化字符串 --

Driver={SQL Anywhere 10};UID=username;PWD=password;CommLinks='TCPIP{HOST=localhost;PORT=1234}'

【讨论】:

  • 谢谢!该端口在 CommLinks 部分中仍然被忽略,但是一旦放置了 CommLinks 部分,ODBC 连接就开始要求 - 并接受解决了我遇到的问题的 servername 参数
猜你喜欢
  • 1970-01-01
  • 2013-05-15
  • 2015-04-02
  • 1970-01-01
  • 2022-06-27
  • 2011-08-14
  • 2021-12-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多