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

关于jsp中数据库的连接问题
   我用的是sql server 2005 ,就用2005举例吧!
    连接数据库有三方面问题:
    1.数据库权限问题,也就是密码登陆问题,在我前面的文章已经详细介绍了,这里就不说了;
    2.数据库驱动问题,对于2005来说,驱动基本上能用,在我附件中有驱动,驱动用其中一个,同时用会出错,见前面文章。
    3.有了驱动,就是语句的问题,不同的驱动语句可能有差别,下载驱动后,在enu文件夹下的help文件夹下的toc.html文件中查看就行了,下面给出常用的 验证数据库连接的语句:


Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
  String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=data_2007";
  String user="sa";
  String password="sa";  
  Connection conn= DriverManager.getConnection(url,user,password);
  Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
  String sql="select * from userlist";
  ResultSet rs=stmt.executeQuery(sql);
  while(rs.next()) {%>
  您的第一个字段内容为:<%=rs.getString(1)%> <br>
  您的第二个字段内容为:<%=rs.getString(2)%> <br>
  您的第三个字段内容为:<%=rs.getString(3)%> <br>
  <%}%>
  <%out.print("数据库操作成功,恭喜你");%>
  <%rs.close();
  stmt.close();
  conn.close();  
  %>









<%
String connectionUrl = "jdbc:sqlserver://localhost:1433;databaseName=data_2007;user=sa;password=sa;";
Connection conn = DriverManager.getConnection(connectionUrl);

  Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
  String sql="select * from userlist";
  ResultSet rs=stmt.executeQuery(sql);
  while(rs.next()) {%>
  您的第一个字段内容为:<%=rs.getString(1)%> <br>
  您的第二个字段内容为:<%=rs.getString(2)%> <br>
  您的第三个字段内容为:<%=rs.getString(3)%> <br>
  <%}%>
  <%out.print("数据库操作成功,恭喜你");%>
  <%rs.close();
  stmt.close();
  conn.close();  
  %>

不同的驱动情况不同,以驱动为准用哪个语句,大多数情况用的第一个语句。