-
[java][sqlite3][error]query does not return ResultSet카테고리 없음 2012. 12. 14. 09:30
# query문 실행시
String sql = "update crawl_base_set set hotel_list ='"+list_hotel+"',web_list='"+list_web+"',period='"+day+"',person_cnt='"+people+"',startdate ='"+dateString+"',enddate='"+searchTime+"'";
Class.forName("org.sqlite.JDBC");
con = DriverManager.getConnection("jdbc:sqlite:C:/sqlite/test.db");
stat = con.createStatement();
stat.executeQuery(sql);
# 에러 내용
java.sql.SQLException: query does not return ResultSet
at org.sqlite.Stmt.executeQuery(Stmt.java:124)
......
......
......
# 해결
http://docs.oracle.com/javase/6/docs/api/java/sql/Statement.html#executeUpdate%28java.lang.String%29
위의 링크를 확인해 보면
executeQuery
는 SELECT문을 실행하고 무조건 리턴을 보내기 때문에 위의 쿼리문장을 보면 업데이트문이기 때문에 에러가 난다고 볼 수 있다.
INSERT,UPDATE,DELETE을 실행한다면 executeUpdate를 쓴다면 리턴을 보내지 않는다.
executeQuery 말고 executeUpdate를 사용!!!!!