大家都来看看..我是哪里错了.

大真 2007-08-13 01:37:04
public boolean findLensName(String companyname){
jdbcConnection(); //连接数据库
ResultSet rs=null;
try{
String str="select lens.lensname from lens,company where company.company='"+companyname+"' and company.companyid=lens.companyid";

System.out.println(str);
if(st.execute(str)){
System.out.println(rs.getString("lensname"));
System.out.println("asdfasdf");
return true;
}
System.out.println("<<<<<>>>s");
}catch(Exception e){
e.printStackTrace();
e.getMessage();
}
return false;
}
这个方法中参数是表中的记录.
为什么if()中的内容不执行呢..
这个sql语句是对的啊..我在mysql中检验过了.
怎么放在方法中,就不好用了呢.
...全文
197 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lwxaty 2007-08-14
  • 打赏
  • 举报
回复
if(st.execute(str))不执行,st应该是个null,看抛出的异常是不是空指针异常就知道了
laohan323 2007-08-13
  • 打赏
  • 举报
回复
要用PreparedStatement,用?代替变量
alvinz 2007-08-13
  • 打赏
  • 举报
回复
try{
Class.forName("db.class");//such as:oracle.jdbc.driver.OracleDriver String str="select lens.lensname from lens,company where company.company='"+companyname+"' and company.companyid=lens.companyid";
Connection conn = DriverManager.getConnection(url,user,pasword);
Statement st = conn.createStatement();
ResultSet rs = st.execute(str);
while(rs.next()){
System.out.println("XXXX")
}
..................
}
Dragon_sxw 2007-08-13
  • 打赏
  • 举报
回复
再看看书吧

Statement 、 ResultSet是怎么来操作的

接楼上的
Statement stmt = con.createStatement();
这句之后是要
ResultSet rs = stmt.execute(sql);

然后在if(rs.next){
System.out.println(rs.getString("lensname"));
System.out.println("asdfasdf");
}
eidolon_warrior 2007-08-13
  • 打赏
  • 举报
回复
对要定义Statement
Connection con = ConToOra.getConnection();
Statement stmt = con.createStatement();
ronaldowx 2007-08-13
  • 打赏
  • 举报
回复
楼上的说得对,之前得加句st.createStatement();再写if语句
yangxccom 2007-08-13
  • 打赏
  • 举报
回复
st还是个NULL变量吧.这个变量是连接数据库后,用数据库连接变量来建的,我看你连完数据库后没有createStatement();
大真 2007-08-13
  • 打赏
  • 举报
回复
怎么没人呢.

62,623

社区成员

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

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