*************************************************************
//addUser.jsp
<html>
<head>
<title>User Add</title>
</head>
<body>
<form method="post" action="jdbc.jsp">
<p align="center">姓名
<input type="text" name="name" size="20">
<p align="center">密码
<input type="passward" name="pwd" size="20">
<p align="center">
<input type="submit" value="提交" name="B1">
</form>
</body>
</html>
**************************************************************
************************************************************
//jdbc.jsp
<html>
<head>
<title>add user to db</title>
</head>
<%@ page import="java.sql.*"%>
<body>
<pre>
<%
//get parameters from request
String name,pwd;
name=request.getParameter("name");
pwd=request.getParameter("pwd");
try{
//add information to DB
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:jspTest");
Statement stmt=con.createStatement();
stmt.executeUpdate("insert into tbuser values('"+name+"','"+pwd+"')");
//query DB for display all users
ResultSet rs=stmt.executeQuery("select*from tbuser");
//rs.frist();
out.println("All user in DB!");
while(rs.next()){
out.print("username:");
out.print(rs.getString("name")+" passward:");
out.print(rs.getString("password"));
}
//clear,must do it
rs.close();
stmt.close();
con.close();
}catch(Exception ex){
out.println(ex.getMessage());
}
%>
</pre>
</body>
</html>
*************************************************************
但是运行http://localhost:8080/addUser.jsp后,出现下面的错误,
***********************************************************
[Microsoft][ODBC SQL Server Driver][SQL Server]??? 'tbuser' ???
***********************************************************
我想问的是,这个问题是数据源没有设置对么?还是什么其它的原因,
需要说明的,我运行其它的jsp文件,均正常,可以排除apache Tomcat没有问题!
參考答案:原因有:1
.在jsp代码中连接数据库的那一行即:
Connection con=DriverManager.getConnection("jdbc:odbc:jspTest");
应该写成:
Connection con=DriverManager.getConnection("jdbc:odbc:数据源名";DatabaseName=数据库名,登录名,登录密码);
2.根据select*from tbuser判断,“tbuser”是个表名。可能你所指定的数据库中没有这个表。