当我运行程序时出现以下的Exception 信息
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Jdbc_Connect.main(Jdbc_Connect.java:13)
java.lang.NullPointerException
at Jdbc_Connect.main(Jdbc_Connect.java:24)这是什么问题?

解决方案 »

  1.   

    sqlserver sp4 补丁打了么?
      

  2.   

    你要去下载ms提供JDBC连接的三个驱动包
      

  3.   

    sp4的补丁没打,三个jar包已经连接了。谢谢我打一下补丁试一下
      

  4.   

    打了sp4的补丁还是有问题  employee是一个表
    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 'employee' 无效。
    at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
    at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source)
    at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source)
    at com.microsoft.jdbc.sqlserver.tds.TDSExecuteRequest.processReplyToken(Unknown Source)
    at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
    at com.microsoft.jdbc.sqlserver.SQLServerImplStatement.getNextResultType(Unknown Source)
    at com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)
    at com.microsoft.jdbc.base.BaseStatement.postImplExecute(Unknown Source)
    at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
    at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source)
    at com.microsoft.jdbc.base.BaseStatement.executeQuery(Unknown Source)
    at Jdbc_Connect.main(Jdbc_Connect.java:24)
      

  5.   

    我的问题比你的还严重 XP SP2系统,补丁sp4打了
    打开 JBuilder 2006 进行配置(配置时 3个jar包也添加了),需要重起JBuilder 2006的时候也重起了,然后在Tools--Database Pilot--Drivers中也添加了"com.microsoft.jdbc.sqlserver.SQLServerDriver" 驱动
    代码中的URL:url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mybase";然后在Tools--Database Pilot--File--new 选择 com.microsoft.jdbc.sqlserver.SQLServerDriver
    在URL中: "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"点击左边新建的驱动 输入 User Name: sa ,Password:XXXXXXX(用户名和密码均正确,在查询分析器中可以正常打开)
    (以上步骤在学校的 Win2003 Server系统下配置一切正常,可以正常连接和使用。但是换到家里的WinXP sp2就不可以了,查了资料说安补丁sp3或者sp4,都安过了还是不可以。)仍然是 java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.