不知道哪里写错了,会报告错误。

iamhost 2009-07-25 10:56:19
String tt = request.getParameter("Edit1");
String strSQL1 = "SELECT Permit FROM Common_Sn WHERE Id='"+tt+"'";
ResultSet rs1 = sts.executeQuery(strSQL);
rs1.next();
String dd = rs1.getString("Permit");

错误如下:
org.apache.jasper.JasperException: Exception in JSP: /SnSheZhi/ShiYan4.jsp:42

39: String strSQL1 = "SELECT Permit FROM Common_Sn WHERE Id='"+tt+"'";
40: ResultSet rs1 = sts.executeQuery(strSQL);
41: rs1.next();
42: String dd = rs1.getString("Permit");
43: strSQL = "SELECT ModuleId FROM Common_Module WHERE ModuleId IN ("+dd+")";
44: rs = sts.executeQuery(strSQL);
45: i=0;
好像是第42行出现的错误。只是把数据库里的那个值赋给这个变量了,这有错嘛。
...全文
77 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hanleilaile 2009-07-25
  • 打赏
  • 举报
回复
if(rs1.next()){
String dd = rs1.getString(1);
....
}

试试这样。
gaobaiy 2009-07-25
  • 打赏
  • 举报
回复
应该贴错误名称这些出来的
ZhaoHuiZiXin 2009-07-25
  • 打赏
  • 举报
回复
是不是类型不匹配, 得保证 Permit 在数据库中是 varchar 类型才可以.
connor_zheng 2009-07-25
  • 打赏
  • 举报
回复
String tt = request.getParameter("Edit1");
String strSQL1 = "SELECT Permit FROM Common_Sn WHERE Id=?";
ResultSet rs1 = sts.executeQuery(strSQL).setInteger(1,Integer.parseInt(tt));
if(rs1.next()){
String dd = rs1.getString("Permit");
....
}
试试!
jastby 2009-07-25
  • 打赏
  • 举报
回复
看看 tomcat 的日志 看看具体的错误是什么吧
iamhost 2009-07-25
  • 打赏
  • 举报
回复
org.apache.jasper.JasperException: Exception in JSP: /SnSheZhi/ShiYan4.jsp:43

40: ResultSet rs1 = sts.executeQuery(strSQL);
41: if(rs1.next())
42: {
43: String dd = rs1.getString("Permit");
44: }

不行啊,还是报错。为什么呢?
YouMengBuJuan 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jastby 的回复:]
if(rs1.next()){
    String dd = rs1.getString("Permit");
....
}

才能保证 rs1 有数据
[/Quote]
对!!!在取出数据前应做一步判断!!!
jastby 2009-07-25
  • 打赏
  • 举报
回复
if(rs1.next()){
String dd = rs1.getString("Permit");
....
}

才能保证 rs1 有数据
sangshusen_1988 2009-07-25
  • 打赏
  • 举报
回复
如果没有查到值的话,next()方法调用返回的是false,就是还是指向的第一行的前面,
没法拿数据
flowersove 2009-07-25
  • 打赏
  • 举报
回复
貌似没有看到i的定义
if(rs1.next())
{
String dd = rs1.getString(username);
}
String strSQL = "SELECT ModuleId FROM Common_Module WHERE ModuleId IN ("+dd+")";
ResultSet rs = sts.executeQuery(strSQL);
i=0;
while(rs.next())
{
TypeName = rs.getString("ModuleId");
%>
numberOneJava 2009-07-25
  • 打赏
  • 举报
回复
String dd = rs1.getString("username");
这样写的
whuisszl008 2009-07-25
  • 打赏
  • 举报
回复
String dd = rs1.getString(username);
这句是肯定错了的,我没找到这个变量。其他还不知道。
iamhost 2009-07-25
  • 打赏
  • 举报
回复

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" %>
<jsp:useBean id="sts" scope="page" class="sts.Conn" />
<script>
function Edit1Change()
{

<%
String tt = request.getParameter("Edit1");
String strSQL1 = "SELECT Permit, UserName FROM Common_Sn WHERE (Id = '"+tt+"')";
ResultSet rs1 = sts.executeQuery(strSQL);
if(rs1.next())
{
String dd = rs1.getString(username);
}
String strSQL = "SELECT ModuleId FROM Common_Module WHERE ModuleId IN ("+dd+")";
ResultSet rs = sts.executeQuery(strSQL);
i=0;
while(rs.next())
{
TypeName = rs.getString("ModuleId");
%>
document.f.Memo2.options[<%=i%>]= Option("<%=TypeName%>");
<% i++; %>
<% } %>
return false;
}
</script>
<form action="#" name="g">
<input name="Edit1" style="width:260" type="text" onpropertychange="return Edit1Change();">
</input>
</form>
<form name="f" action="#">

不好意思,公司有事,出去了一会,有些朋友没看明白我的意思,我是想把input的值,赋给一个变量,再由这个变量去select数据库,之后数据库得出来的结果显示在<slelct>的<option>里。能帮我解决,我一定加分,先谢谢你们了。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧