java PreparedStatement ResultSet 的数据库问题
public List<person> Search() throws SQLException{
Connection conn = sjk2.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select Eno,Cno,En,Sex,Etitle,Eage,Esal from zhigong");
List<person> people = new ArrayList<person>();
person p = null;
while(rs.next()){//如果对象中有数据,就会循环打印出来
p = new person();
p.setEno(rs.getString("Eno"));
p.setCno(rs.getString("Cno"));
p.setEn(rs.getString("En"));
p.setSex(rs.getString("Sex"));
p.setEtitle(rs.getString("Etitle"));
p.setEage(rs.getInt("Eage"));
p.setEsal(rs.getInt("Esal"));
people.add(p);
}
return people;
}
目前的问题是,我想单独查询表中符合某条件 带参数(“Eno=?”)的数据集
想替换 加这一句("select Eno,Cno,En,Sex,Etitle,Eage,Esal from zhigong where Eno=?") 加上去后系统提示语法有错误
请问应该怎么修改
这个是带参数的另一个 可以运行,主要问题是不会结合ResultSet 求大神指导 谢谢~
//delete
public void SearchOne(String Eno) throws SQLException{
person p = null;
Connection conn=sjk2.getConnection();
String sql="" +
"delete from zhigong where Eno = ?";
PreparedStatement psmt = conn.prepareStatement(sql);
psmt.setString(1,Eno);
//执行SQL语句
psmt.execute();
}
相关推荐
dm7-db-jdbc-master.zip
达梦数据库7的驱动
如何从 Java 存储过程将 JDBC ResultSet 作为 Ref Cursor 返回.doc
本文档演示如何从 Java 存储过程将 JDBC ResultSet 作为 REF CURSOR 返回。JDBC ResultSet 是一个表示数据库的数据表,通常通过执行查询数据库的语句产生该表。REF CURSOR 是 PL/SQL 中相应的类型。Java 存储过程的调用规范将 ResultSet 映射到 REF CURSOR。在 Oracle9i 之前,不可能从 Java 存储过程直接返回一个 ResultSet,因为没有定义表单 ResultSet->REF CURSOR 的映射。Oracle9i 增加了此映射,允许从函数返回 ResultSet 或将其作为 OUT 参数传到某个过程。但它仍不支持逆向映射 (REF CURSOR->ResultSet),因此当前版本的数据库仍然不支持 IN 和 IN OUT 参数。 在本方法指南中,我们拥有两个 Java 存储过程。Java 存储过程 getEmployees() 将 SCOTT 模式中 EMP 表的所有列装入 ResultSet 中并将其返回。Java 存储过程 getDepartments(ResultSet[] rout) 将 ResultSet 对象作为 OUT 参数并将 DEPT 表的所有列装入此 ResultSet 对象中。
详解Java的JDBC中Statement与PreparedStatement对象
主要介绍了详解Java的JDBC中Statement与PreparedStatement对象,PreparedStatement一般来说比使用Statement效率更高,需要的朋友可以参考下
怎样实现关闭connection时自动关闭Statement和ResultSet (下篇)
NULL 博文链接:https://rickgong.iteye.com/blog/2354177
DAT107-Database
DAT107-Database


