关于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();
%>
不同的驱动情况不同,以驱动为准用哪个语句,大多数情况用的第一个语句。