问题:数据连不通
连接数据库的代码如下:<%
    try {
      //装载驱动程序
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
      out.println("forname success");
      
      //创建连接
      Connection con = java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev", "sa", "sa");
      Statement stmt = con.createStatement();
      ResultSet rst = stmt.executeQuery("select * from contact;");
      while (rst.next()) {
        out.println("<tr>");
        out.println("<td>" + rst.getString("userName") + "</td>");
        out.println("<td>" + rst.getInt("mobile") + "</td>");
        out.println("<td>" + rst.getString("phone") + "</td>");
        out.println("<td>" + trans(rst.getString("mail")) + "</td>");
        out.println("<td>" + rst.getDate("lastcontact") + "</td>");
        out.println("<td>" + trans(rst.getString("mem")) + "</td>");
        out.println("</tr>");
      }
      //关闭连接、释放资源
      rst.close();
      stmt.close();
      con.close();
    }
    catch (Exception e) {
 out.print("****************************ERROR*****************************<br>");
     StringWriter sw=new StringWriter();
     PrintWriter pw=new PrintWriter(sw);
     e.printStackTrace(pw);
     out.print(sw.getBuffer().toString());
out.print("****************************ERROR*****************************<br>");
    }
  %>报了一大堆问题,部分如下: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 ...我的怀疑:1、应该不是驱动程序的问题,因为我在装载驱动程序后面写的out.println("forname    success");显示了;
          2、错误可能在这里:("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev", "sa", "sa");数据库名、用户名、密码都没问题,注:我装了oracle,8080端口冲突,我把Tomcat的端口改为8081了;
          3、在cmd命令符下telnet 127.0.0.1 1433不通。
请问各位高人,这是什么问题,怎么解决?
各位大侠帮忙看看,分不够再加。

解决方案 »

  1.   

    在websphere中安装SQL Server 2000的JDBC驱动及其配置连接
    软件环境: Websphere4.0.5 + SQL Server2000 + SQL Server2000 SP3注: Websphere 和 SQL Server2000可以安装在不同的机器上.&#61548; 步骤一 :  ( 在安装了SQL Server2000的机器上 )1. 下载 SQL Server2000 JDBC驱动
    地址: http://www.microsoft.com/china/sql/downloads/2000/jdbc.asp
    并且安装. 默认路径 : C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\2. 将安装目录中 SQLServer JTA\qljdbc.dll 和 instjdbc.sql 拷贝到 C:\Program Files\Microsoft SQL Server\MSSQL\Binn3. 将安装目录中 lib 下的3个.jar文件(msbase.jar,mssqlserver.jar,msutil.jar)拷贝到 C:\WebSphere\AppServer\lib\4. 打开并登陆SQL SERVER的查询分析器.然后选择 文件--->打开---->打开查询文件.在SQL Server中选择数据库所在机器.如果是本机.则选择local. 5. 打开 C:\Program Files\Microsoft SQL Server\MSSQL\Binn\instjdbc.sql  并且运行脚本.
    之后会在扩展存储过程中新生成存储过程.
     
    &#61548; 步骤二 : ( 在装有websphere的机器上 )6. 打开websphere的管理控制台.新建JDBC供应商.
    填写名称(SQL Server2000).
    实现的类选择 : com.microsoft.jdbc.sqlserver.SQLServerDataSource 节点-->安装-->指定驱动程序-->添加驱动程序   
    然后把C:\WebSphere\AppServer\lib\下的三个文件(msbase.jar,mssqlserver.jar,msutil.jar)全部添加进来.最后确定安装.
     7. 新建数据源.
    名称(任意) :   VehicleClaimDataSQLSource
    JDNI名(和程序中的对应) :  jdbc/VehicleClaimSQLDataSource填写定制属性:
    databaseName :  test       (  SQL Server数据库的名称  )
    portNumber   :  1433
    serverName   :  10.1.1.10  (  SQL Server服务器的IP地址或名称  )
    user         :  sa
    password     :  123456    (  SQL Server数据库的密码  )
    selectMethod :  cusor
    其他没有提及到的属性不填写.之后点击"测试连接". 
    8. 测试成功之后,右击"节点"下的节点,选择"停止并且重新启动".之后websphere管理控制台自动关闭.
     9. 打开 websphere下的 "启动管理控制器",等待控制器重启之后.再打开websphere"管理控制台".
     
    &#61548; 备注:
    SQL Server2000 SP3 下载地址: http://www.microsoft.com/china/sql/downloads/sp3.asp
    以上供你参考,
    不仅仅3个包就可以了!!!!!
      

  2.   

    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.  这个怎么搞定呀??我也有如此问题。
      

  3.   

    telnet 127.0.0.1 1433不通,你可以有用客户端工具添加一个试试,用查询分析器连一下看看