关于Jsp+Servlet+SQL的问题 !祝大家五一快乐!!!
这个是连接数据库的.java文件;下面的WaterList.jsp调用它来连接数据库并显示所有数据。
package WaterData;
import java.sql.*;
import java.io.*;
import java.lang.*;
public class WaterData
{
String DBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String Connstr="jdbc:odbc:water";
Connection conn=null;
ResultSet rs=null;
Statement st=null;
public WaterData()
{
try
{
Class.forName(DBDriver);
}
catch(ClassNotFoundException e)
{
System.err.print("WaterData():"+e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{
try
{
conn=DriverManager.getConnection(Connstr);
st=conn.createStatement();
rs=st.executeQuery(sql);
}
catch(SQLException f)
{
System.err.print("aq.executeQuery():"+f.getMessage());
}
return rs;
}
}
下面jsp的文件名为:WaterList.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<body>
<p>查询信息</p>
<jsp:useBean id="db" class="WaterData.WaterData"/>
<table width="611" border="1">
<tr>
<td width="112">户名</td>
<td width="122">编号</td>
<td width="117">地址</td>
<td width="117">水费</td>
<td width="121">管理员</td>
</tr>
<%
String sql="select * from database";
ResultSet rs=db.executeQuery(sql);
String name="";
String address="";
String tollgatherer="";
while(rs.next())
{
name=rs.getString("name");
address=rs.getString("address");
tollgatherer=rs.getString("tollgatherer");
%>
<tr>
<td><%=name%></td>
<td></td>
<td><%=address%></td>
<td></td>
<td><%=tollgatherer%></td>
</tr>
<%}
rs.close();%>
</table>
</body>
</html>
执行这个WaterList.jsp文件后就出现了下面的提示:
aq.executeQuery:[Microsoft][ODBC SQL Server Driver][SQL Server]在关键字 'databas
e' 附近有语法错误。
我没弄明白错误到底出现在哪里?请大家帮个忙帮我修改一下这个程序,谢谢!!!!
这是数据库里的一个表database,该表的结构为:
userid char 10 0
name char 20 1
address char 45 1
category char 8 1
price money 8 0
tollgatherer char 8 1
cardinalnum int 4 0