日期:2014-05-16  浏览次数:20469 次

解决了jsp连接sqlserver2000的问题【原创】
老师布置了个实验,说要连接sqlserver数据库,于是本人想用比较熟悉的jsp来连接,之前就有尝试连接,但由于补丁的问题常常出错,今天也不例外,我排斥了两个错误后方才连接上的。

第一个错误我忘记了,第二个错误好像是端口的问题,但最后发现是补丁的问题,我打的是sp3,打完后就可以连接了。说得很烂吧,呵呵,这篇文章我是想记录下来而已,以后一看应该就可以解决问题。

以下是测试连接代码:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    //安装SQL Server 2000 SP4补丁
    //安装Microsoft SQL Server 2000 Driver for JDBC
    //将Microsoft SQL Server 2000 Driver for JDBC\lib目录下的三个jar复制到Tomcat5\common\lib目录下
    //或者将这三个jar设置到CLASSPATH中
   
    // 定义数据库驱动程序
    String DBDRIVER="com.microsoft.jdbc.sqlserver.SQLServerDriver";
    // 定义数据库连接地址
    String DBURL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
    // 定义数据库连接用户名和密码
    String DBUSER="sa";
    String DBPASSWORD="";
    // 定义数据库连接对象,属于java.sql包中的接口
    Connection conn=null;
    // 定义PreparedStatement对象,用于操作数据库
    PreparedStatement pstmt=null;
    // 查询返回的结果集对象
    ResultSet rs=null;
    // 定义一字符串变量,用于保存SQL语句
    String sql=null;
%>
<%
    try{
       // 1、加载驱动程序
       Class.forName(DBDRIVER).newInstance();
       // 2、连接数据库
       conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);
       System.out.println("DataBase Connection OK!!!");
       out.println("DataBase Connection OK!!!");
    }catch(Exception e){
       System.out.println("DataBase Connection Failure!!!" + e.getMessage());
       out.println("DataBase Connection Failure!!!" + e.getMessage());
    }
   
    try{
       // 3、操作数据库
       sql="select * from authors";
       pstmt=conn.prepareStatement(sql);
       rs=pstmt.executeQuery();
%>
<table border="1">
<tr>
    <td>au_id</td>
    <td>au_lname</td>
    <td>au_fname</td>
    <td>phone</td>
    <td>address</td>
    <td>city</td>
    <td>state</td>
    <td>zip</td>
</tr>
<%
       while(rs.next())
       {
          String id=rs.getString("au_id");
          String lname=rs.getString("au_lname");
          String fname=rs.getString("au_fname");
          String phone=rs.getString("phone");
          String address=rs.getString("address");
          String city=rs.getString("city");
          String state=rs.getString("state");
          String zip=rs.getString("zip");
%>
   <tr>
  &nb