Oracle自增长的处理:
众所周知,Oracle没有自增概念,需要创建一个sequence,然后获得唯一ID。
Eova的处理:
1.默认sequence
规则:seq_表名.nextval
PS:通过修改JFinal源码,分别在Model.save() 和 Record.save() 默认使用序列,具体请阅读源码。
使用默认Seq举例:
Sql: insert into eova_log(id, user_id, type, info, ip) values(seq_eova_log.nextval, ?, ?, ?, ?)
2.通过默认值自定义:
CrudManager.buildData();
2.1 自定义Sequence
自定义Seq举例:
create sequence seq_eova_user increment by 1 start with 21 maxvalue 9999999999;
PS:这里对名字没有约束,sequence 可以随意取名,例如:my_seq_id
自行创建任意名字的sequence,然后通过 eova_field.defaulter 指定
Sql: insert into eova_user(login_id, id, rid, nickname, login_pwd) values(?, seq_eova_user.nextval, ?, ?, ?)
2.2默认ID值
新增后:
Other:
Eova提供了由Mysql自动生成Oracle脚本的工具类:
DbUtil.createOracleSql();
使用方法:
连接到Mysql数据源上:
eova.config 配置:
initSql = true
系统启动时会将Sql脚本输出在控制台,复制执行即可!