Oracle数据库数据迁移到MySQL数据库之序列问题解决办法

来源:互联网 发布:软件测试 回归策略 编辑:程序博客网 时间:2024/06/10 03:27

1.若在Oracle中某个主键id用到了序列,并且此id在后续的使用中需要用到(如截取id长度),那么在迁移到mysql数据库时,由于MySQL中没有序列,可以如下解决:

<!--  select to_char(sysdate,'yyyymmddhhmiss')||FPKJID.nextval val from dual -->(在Oracle中的sql语句)
  select max(id) from fp_kj(在MySQL中的数据)

②修改控制层代码

SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");
    String startid = df.format(new Date());
    String id = fpkjService.getReceiptSeq();
    if(id!=null && !"".equals(id)){
    id = startid+String.valueOf(Integer.parseInt(id.substring(15))+1);
    }else{
    id = startid+"100000";
    }

2.若在Oracle中某个主键id用到了序列,但在后续的程序中没有使用该id,那么在mysql中可以这样解决?

就是在建表的时候,直接在id的那个字段勾选自动增长,且字段类型为int类型


1 0