private void sumAllCityHumanAndCity(){
ResultSet rs = null;
try {
String kingsql = "SELECT PlaceKing_id,PlaceKing_humanCount,PlaceKing_cityCount FROM zt_PlaceKing";
rs = mysql.records(kingsql);
String sumHumanSqlFirst = "select sum(CityProperty_human) as sumHuman from zt_CityProperty where city_id in (SELECT city_id FROM zt_City where king_id =";
String sumHumanSqlLast = ")";
String sumCitySql = "select count(*) as sumCity from zt_City where king_id =";
while(rs.next()){
ResultSet tempRs = mysql.records( sumHumanSqlFirst+rs.getInt("PlaceKing_id")+sumHumanSqlLast);
System.out.println(tempRs.getInt("sumHuman"));
int sumHumanCount = (Integer)mysql.records( sumHumanSqlFirst+rs.getInt("PlaceKing_id")+sumHumanSqlLast).getInt("sumHuman");
int sumCity = mysql.records( sumCitySql+rs.getInt("PlaceKing_id")).getInt("sumCity");
rs.updateInt("PlaceKing_humanCount", sumHumanCount);
rs.updateInt("PlaceKing_cityCount", sumCity);
rs.updateRow();
}
} catch (SQLException e) {
e.printStackTrace();
}
}System.out.println(tempRs.getInt("sumHuman"));
这里为什么getInt 得不到呢?报这样的错误,那位高手可以帮忙看看啦!很急~~~~~
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1056)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:817)
at com.mysql.jdbc.UpdatableResultSet.checkRowPos(UpdatableResultSet.java:230)
at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2578)
at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2719)
at com.hztusheng.zt.daemon.impl.PlaceSorts.sumAllCityHumanAndCity(PlaceSorts.java:405)
at com.hztusheng.zt.daemon.impl.PlaceSorts.place_king(PlaceSorts.java:142)
at com.hztusheng.zt.daemon.impl.PlaceSorts.place_allTable(PlaceSorts.java:119)
at com.hztusheng.zt.daemon.impl.PlaceSorts.run(PlaceSorts.java:111)
at com.hztusheng.zt.daemon.DaemonRun.run(DaemonRun.java:41)
ResultSet rs = null;
try {
String kingsql = "SELECT PlaceKing_id,PlaceKing_humanCount,PlaceKing_cityCount FROM zt_PlaceKing";
rs = mysql.records(kingsql);
String sumHumanSqlFirst = "select sum(CityProperty_human) as sumHuman from zt_CityProperty where city_id in (SELECT city_id FROM zt_City where king_id =";
String sumHumanSqlLast = ")";
String sumCitySql = "select count(*) as sumCity from zt_City where king_id =";
while(rs.next()){
ResultSet tempRs = mysql.records( sumHumanSqlFirst+rs.getInt("PlaceKing_id")+sumHumanSqlLast);
System.out.println(tempRs.getInt("sumHuman"));
int sumHumanCount = (Integer)mysql.records( sumHumanSqlFirst+rs.getInt("PlaceKing_id")+sumHumanSqlLast).getInt("sumHuman");
int sumCity = mysql.records( sumCitySql+rs.getInt("PlaceKing_id")).getInt("sumCity");
rs.updateInt("PlaceKing_humanCount", sumHumanCount);
rs.updateInt("PlaceKing_cityCount", sumCity);
rs.updateRow();
}
} catch (SQLException e) {
e.printStackTrace();
}
}System.out.println(tempRs.getInt("sumHuman"));
这里为什么getInt 得不到呢?报这样的错误,那位高手可以帮忙看看啦!很急~~~~~
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1056)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:817)
at com.mysql.jdbc.UpdatableResultSet.checkRowPos(UpdatableResultSet.java:230)
at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2578)
at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2719)
at com.hztusheng.zt.daemon.impl.PlaceSorts.sumAllCityHumanAndCity(PlaceSorts.java:405)
at com.hztusheng.zt.daemon.impl.PlaceSorts.place_king(PlaceSorts.java:142)
at com.hztusheng.zt.daemon.impl.PlaceSorts.place_allTable(PlaceSorts.java:119)
at com.hztusheng.zt.daemon.impl.PlaceSorts.run(PlaceSorts.java:111)
at com.hztusheng.zt.daemon.DaemonRun.run(DaemonRun.java:41)
String kingsql = "SELECT PlaceKing_id,PlaceKing_humanCount,PlaceKing_cityCount FROM zt_PlaceKing";
rs = mysql.records(kingsql);
先看这里的rs内容,
把rs.getInt("PlaceKing_id") 打印出来,看看对不对,
再把sumHumanSqlFirst+rs.getInt("PlaceKing_id")+sumHumanSqlLast 打印出来,并用这个打印出的语句直接操作数据库,看看能不能得到结果,然后再去看程序中有没有错误
看你贴的代码,一个打印都没有.......
到这一步就直接跳过去了!
at com.hztusheng.zt.daemon.impl.PlaceSorts.sumAllCityHumanAndCity(PlaceSorts.java:405)
错误信息不是告诉你哪行出了错,还有,你试着把sumHumanSqlFirst+rs.getInt("PlaceKing_id")+sumHumanSqlLast 打印出来,
用打印出的结果,看看在数据库里,能不能进行正确的查询