jTDS连接字符串:使用反斜杠连接到MS SQL Server实例

cur*_*us1 11 sql-server jtds jdbc

我在Java应用程序中使用jTDS驱动程序.数据库管理员告诉我SQL Server实例名称是

MSSQL-DB09v1\v1

我该如何编写连接URL?

我一直在使用类似的东西

jdbc:jtds:sqlserver://server-name/database_name 
Run Code Online (Sandbox Code Playgroud)

一段时间它运行良好,但实例名称包含反斜杠时不知道正确的连接字符串.

cur*_*us1 24

做了进一步的研究和测试.在这种情况下找到正确的连接URL字符串是:

jdbc:jtds:sqlserver://server-name/database_name;instance=instance_name
Run Code Online (Sandbox Code Playgroud)

在我的例子中,连接字符串是:

jdbc:jtds:sqlserver://server-name/MSSQL-DB09v1;instance=v1
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅jTDS 常见问题解答


Pfl*_*ugs 5

我有一个类似的情况,我的DBA给了我一个服务器上的数据库,具有以下连接:{SERVER_NAME}\{INSTANCE}.当使用SSMS连接到服务器和实例时,该语法有效,但在通过Java驱动程序连接时无效.

相反,以下语法对我有用:

jdbc:jtds:sqlserver://{SERVER_NAME};databaseName={DATABASE_NAME);instance={INSTANCE}

请注意,我必须将实例移动到连接字符串参数.一旦我这样做,一切都运作良好.

供参考,请参阅此特定的JTDS常见问题解答.