我写了一段 用于搜索的代码,通过输入作者名搜索出这个作者的文章.如果是"select * from AR"便可以顺利罗列出整个数据库的资料,但一改成select * from AR where AUTHOR=Username,就说什么参数不足,请大家帮我看看是怎么回事??谢谢大家...<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,bean.*,java.util.Collection,java.util.ArrayList,java.util.Iterator;" errorPage="" %>
<%
String Username=request.getParameter("username");
String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:/java/myblog.mdb";
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch(java.lang.ClassNotFoundException e) {
System.err.println("mydb(): " + e.getMessage());
}
Statement stmt = null;
ResultSet rs = null;
Connection conn = DriverManager.getConnection(url);
stmt = conn.createStatement();
String sql = "select * from AR where AUTHOR=Username";
rs = stmt.executeQuery(sql);
Collection c = new ArrayList();
messageA msg = null;
while (rs.next()) {
msg = new messageA();
msg.seta_title(rs.getString("TITLE"));
msg.seta_content(rs.getString("CONTENT"));
msg.setAuthor(rs.getString("AUTHOR"));
c.add(msg);
msg = null;
}
Iterator iterator = c.iterator();
while (iterator.hasNext()) {
messageA ms = (messageA) iterator.next();
%>
<td><%= ms.getAuthor() %></td>
<td><%= ms.geta_title() %></td><%}%>显示的错误:
javax.servlet.ServletException: [Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.test_jsp._jspService(test_jsp.java:106)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
<%
String Username=request.getParameter("username");
String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=D:/java/myblog.mdb";
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch(java.lang.ClassNotFoundException e) {
System.err.println("mydb(): " + e.getMessage());
}
Statement stmt = null;
ResultSet rs = null;
Connection conn = DriverManager.getConnection(url);
stmt = conn.createStatement();
String sql = "select * from AR where AUTHOR=Username";
rs = stmt.executeQuery(sql);
Collection c = new ArrayList();
messageA msg = null;
while (rs.next()) {
msg = new messageA();
msg.seta_title(rs.getString("TITLE"));
msg.seta_content(rs.getString("CONTENT"));
msg.setAuthor(rs.getString("AUTHOR"));
c.add(msg);
msg = null;
}
Iterator iterator = c.iterator();
while (iterator.hasNext()) {
messageA ms = (messageA) iterator.next();
%>
<td><%= ms.getAuthor() %></td>
<td><%= ms.geta_title() %></td><%}%>显示的错误:
javax.servlet.ServletException: [Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.test_jsp._jspService(test_jsp.java:106)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
解决方案 »
- 购物网站是如何一个个放入SESSION,又是如何一个个取出
- eclipse中创建web工程,为什么我把编译器改成 1.5后在项目名上就会出错
- form填充问题,急求
- struts下载文件时出错:java.lang.IllegalStateException: Cannot forward after response has been committed
- 求救:再线等答案!!!
- 急!!!!!!jsp给怎么Servlet传递Vector类型的参数
- 请教,如下程序为什么不能显示图片?
- 来,考你一个简单问题,装tomcat+jdk是不是一定要apache?答对有分的
- jspsmartupload是什么东西,如何用?请问
- 怎么在写入数据库的时候会出现这样的问题?
- 怎么用JavaScript自写一个函数显示隐藏层?
- "注册激活“怎么实现呢?
String sql = "select * from AR where AUTHOR='Username'"; //是字符串
String sql = "select * from AR where AUTHOR='"+Username+"'";//是字符串变量