自动生成编码

public String getCode() throws Exception{
        DBTool tool = new DBTool();
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        String code="";
        try {

           //查询序列-BGT_BUDGET_AMOUNT_SEQ为序列名称
            String sql = "SELECT BGT_BUDGET_AMOUNT_SEQ.nextval from dual";
            conn = tool.getConnection();
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            ResultSetMetaData m=null;//获取 列信息
              
            m=rs.getMetaData();
            int columns=m.getColumnCount();
            while(rs.next()){
                 for(int i=1;i<=columns;i++){
                     code= rs.getString(i);
                 }      
            }
        } catch (Exception e) {
            throw e;
        }finally{
            com.sgai.fssc.service.hec4cwgx.subjectDef.BaseDaoA.closeObj(conn,stmt,rs);
        }

//此处生成code为4位,下面是判断位数补填位数
        if(code.length()<6){
            return "00"+code;
        }else{
            return code;//
        }
    }

--每执行查询一次,序列进行递增。

自动生成编码_第1张图片

你可能感兴趣的:(ORACLE)