ODBC 驱动程序忽略 SQL Anywhere 10 的端口参数

ODBC Driver ignores port parameters for SQL Anywhere 10

我正在尝试使用 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;

None个根本改不了连接,甚至连不上

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

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

看来您只是在编造连接属性以在字符串中尝试...

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

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}'