我做的功能:查询数据库,并且显示。
但是有个问题:执行查询一遍,可以显示数据,但是不重起服务器,再操作一遍,就报以下错了:
SQL command not properly ended
但是重起服务器就又好了。不知道什么原因,
很可能是Sql语句的错。
以下是源代码:
ResultSet rsTotalData = null;
PageModel pageModel = null;
sbSql.append("SELECT ID,EMP_NAME,REASON_KIND,MARK,START_DATE,");
sbSql.append("TO_CHAR(START_DATE,'YYYY/MM/DD') || RETURN_KIND START_RETURN,LENGTH,REASON_CONTENTS ");
sbSql.append("FROM HOLIDAY_INFO holiday,EMP_INFORMATION empinfo ");
sbSql.append("WHERE holiday.EMP_ID = empinfo.EMP_ID AND empinfo.OFFDUTY_TIME IS NULL ");
sbSql.append("AND holiday.SUPER_ID = ? ");
sbSql.append("AND holiday.MARK = ? ");
sbSql.append("ORDER BY START_DATE DESC");
try{
//PreparedStatement
ps = conn.prepareStatement(sbSql.toString(),
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//PreparedStatement
ps.setString(1,userInfo.getDepid());
ps.setString(2,Global.FALSEMARK);
rsTotalData = ps.executeQuery();
pageModel = getPageModel(rsTotalData,userInfo.getDepname(),currentPage,numPage);
}catch(SQLException eSQL){
eSQL.printStackTrace();
logger.error(eSQL.getMessage(),eSQL);
throw eSQL;
}catch(Exception e){
logger.error(e.getMessage(),e);
throw e;
}finally{
//PreparedStatement
closeAll(ps, rsTotalData);
}
但是有个问题:执行查询一遍,可以显示数据,但是不重起服务器,再操作一遍,就报以下错了:
SQL command not properly ended
但是重起服务器就又好了。不知道什么原因,
很可能是Sql语句的错。
以下是源代码:
ResultSet rsTotalData = null;
PageModel pageModel = null;
sbSql.append("SELECT ID,EMP_NAME,REASON_KIND,MARK,START_DATE,");
sbSql.append("TO_CHAR(START_DATE,'YYYY/MM/DD') || RETURN_KIND START_RETURN,LENGTH,REASON_CONTENTS ");
sbSql.append("FROM HOLIDAY_INFO holiday,EMP_INFORMATION empinfo ");
sbSql.append("WHERE holiday.EMP_ID = empinfo.EMP_ID AND empinfo.OFFDUTY_TIME IS NULL ");
sbSql.append("AND holiday.SUPER_ID = ? ");
sbSql.append("AND holiday.MARK = ? ");
sbSql.append("ORDER BY START_DATE DESC");
try{
//PreparedStatement
ps = conn.prepareStatement(sbSql.toString(),
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
//PreparedStatement
ps.setString(1,userInfo.getDepid());
ps.setString(2,Global.FALSEMARK);
rsTotalData = ps.executeQuery();
pageModel = getPageModel(rsTotalData,userInfo.getDepname(),currentPage,numPage);
}catch(SQLException eSQL){
eSQL.printStackTrace();
logger.error(eSQL.getMessage(),eSQL);
throw eSQL;
}catch(Exception e){
logger.error(e.getMessage(),e);
throw e;
}finally{
//PreparedStatement
closeAll(ps, rsTotalData);
}
不会是全局变量 然后在上次基础上重新append 了吧