回 帖 发 新 帖 刷新版面

主题:jsp连接sql server数据库的问题--谢谢

代码如下:
   <%@ page import="java.sql.*"%>
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<%
  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
  String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=t";
  String user="sa";
  String password="geting";
  Connection conn=DriverManager.getConnection(url,user,password);
  Statement stmt=conn.createStatement();
  String sql="select * from t";
  ResultSet rs=stmt.executeQuery(sql);
  while(rs.next())
{%>
 <%=rs.getString(1)%>
<%}%>
<%out.println("数据库操作成功");%>
<%rs.close();
  stmt.close();
  conn.close();%>
</body>
</html>
报错:
javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    org.apache.jsp.text_jsp._jspService(text_jsp.java:81)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause 

java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
    com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
    com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
    com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
    com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
    com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
    com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
    java.sql.DriverManager.getConnection(DriverManager.java:525)
    java.sql.DriverManager.getConnection(DriverManager.java:171)
    org.apache.jsp.text_jsp._jspService(text_jsp.java:52)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802
谢谢,各位了

回复列表 (共10个回复)

沙发

从代码上看,好像没有什么问题。你检查一下你的环境变量对不对。

板凳

你是直接吧,有没有那三个文件,下面是我的直连代码,测试通过

 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
                  String ko="jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=xin_dog;";
                  sq_str= DriverManager.getConnection(ko,"sa","");
                  sql_st=sq_str.createStatement();

3 楼

兄弟,你的数据库连接有问题。好好看一下,是不是少什么文件啊,

4 楼

JDBC的三个JAR包有没有放到TOMCAT的LIB文件夹下

5 楼

楼上的JDBC的三个JAR包是哪三个包,具体一点?

6 楼


哈哈哈,和我同样的错误
给SQL和Microsoft SQL Server 2000 Driver for JDBC都打一个SP3的补丁。

7 楼

这个错要抛出异常吧!TRY{}CATCH(){}

8 楼


打SP3补丁 或者是没引JAR包 在或者你安装SQL2000的时候没选择混合登陆

9 楼

和我的一样的错误啊,试试把SQlserver 2000打上SP4升级包,应该就行了

10 楼


装SP4补丁,装JDBC驱动

我来回复

您尚未登录,请登录后再回复。点此登录或注册