我正在尝试使用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
以外的其他方法来连接可以指定端口的地方?
答案 0 :(得分: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}'