java代码如下:
String qry = "select username,password,email,phone,addr,rdate from user where id = ?";
int uid = 1;
ResultSet rs;
Connection conn;
//省略取得JDBC连接的代码
PreparedStatement ps = conn.prepareStatement(qry);
try {
conn.setAutoCommit(false);
ps.setInt(1, uid);
rs = ps.executeQuery();
conn.setAutoCommit(true);
} catch (SQLException e) {
e.printStackTrace();
}
可以执行查询而不抛出异常,但是一旦调用rs.getString()就会有异常,调用rs.getFetchSize()得到的结果是0,而我再MySQL控制台下执行相同的查询就有结果匹配.应该怎么改代码才能得到查询结果呢?
String qry = "select username,password,email,phone,addr,rdate from user where id = ?";
int uid = 1;
ResultSet rs;
Connection conn;
//省略取得JDBC连接的代码
PreparedStatement ps = conn.prepareStatement(qry);
try {
conn.setAutoCommit(false);
ps.setInt(1, uid);
rs = ps.executeQuery();
conn.setAutoCommit(true);
} catch (SQLException e) {
e.printStackTrace();
}
可以执行查询而不抛出异常,但是一旦调用rs.getString()就会有异常,调用rs.getFetchSize()得到的结果是0,而我再MySQL控制台下执行相同的查询就有结果匹配.应该怎么改代码才能得到查询结果呢?
解决方案 »
- Exception accessing property uId for bean houseInfo: java.lang.NoSuchMethodException: Unknown proper
- java.lang.ClassNotFoundException: webservice.WebServiceListener,求解!
- 如何进行身份证号码的验证
- 用什么工具开发jsf ? 我的是myeclipse + eclipse,这是不是好的选择!另外关于jsf的一些疑惑!
- 问个关于jsessionid的问题
- hibernate小问题
- struts+spring_hibernate开发,JMeter负载测试,测试线程超过2个就死。
- 乱码问题~~顶有分
- 大致把J2SE看了一遍,准备学习J2EE,大家有什么好的书籍推荐?
- 困惑问题
- 请教各位高手一个关于displaytag的问题
- JDK帮助文当中为什么没有dt.jar等jre环境中必需的类库的API说明
你为什么在查询中设置事务???没有必要!把事务去掉看看!
...
...
conn.setAutoCommit(true); //这里很奇怪,这里又把提交方式调成自动了;而没进行提交
一般情况是这样干的conn.setAutoCommit(false);
...
...
conn.commit();//执行提交
try {
conn.setAutoCommit(false);
ps.setInt(1, uid);
rs = ps.executeQuery(); 这个地方要手动conn.commit();否则上面的语句相当于没有执行。
conn.setAutoCommit(true);
} catch (SQLException e) {
e.printStackTrace();
} 2,try {
conn.setAutoCommit(false);
ps.setInt(1, uid); conn.setAutoCommit(true); 执行前修改为自动提交rs = ps.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
}