Драйвер ODBC игнорирует параметры порта для SQL Anywhere 10 - PullRequest
0 голосов
/ 14 января 2019

Я пытаюсь подключиться к базе данных SQL Anywhere 10, используя соединение ODBC в C #. Это прекрасно сочетается со всеми параметрами по умолчанию, но всякий раз, когда я пытаюсь указать порт или 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, для подключения, где я могу указать порт?

1 Ответ

0 голосов
/ 16 января 2019

Похоже, вы просто создаете атрибуты соединения, чтобы попробовать в строке ...

Попробуйте посмотреть документацию для используемого вами драйвера -

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

...