java jdbc 操作sql2000 数据库报错:

com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 10.107.18.15 的 TCP/IP 连接失败。错误:“Connection refused: connect。请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1049)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:833)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:716)
    at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:841)
    at java.sql.DriverManager.getConnection(DriverManager.java:571)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at com.spring.sec.web.quartz.indexView.index(indexView.java:156)
    at sun.reflect.GeneratedMethodAccessor59.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)

经过测试,是SQL2000企业服务器不支持远程连接,所以打上补丁SP4后,可以正常对数据库读写。

另附jdbc连接字符串写在配置文件和代码里的注意事项。

配置文件里的写法:

jdbc\:sqlserver\://服务器IP;databaseName\=数据库名

代码中则这样写

jdbc:sqlserver://192.168.132.2;databaseName=lianwdb

如果像配置文件中加斜杠,就会出现如下的异常

jdbc\\:sqlserver\\://192.168.132.2;databaseName\\=lianwdb
java.sql.SQLException: No suitable driver found for jdbc\:sqlserver\://192.168.132.2;databaseName\=lianwdb
    at java.sql.DriverManager.getConnection(DriverManager.java:596)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at test.Test.main(Test.java:415)



注意:本文归作者所有,未经作者允许,不得转载