1,在EO的属性中使用Groovy
优:简单直接缺:断号
- (new Oracle.jbo.server.SequenceImpl("XXXX_SEQ",adf.object.getDBTransaction())).getSequenceNumber()
2,在EO对应的java类的create方法中对属性赋值优:可以产生复杂的Sequence值缺:断号
- SequenceImpl sequence =
- new SequenceImpl("XXX_SEQ", getDBTransaction());
- oracle.jbo.domain.Number seqNum = sequence.getSequenceNumber();
- String strSeq = "SIH_" + seqNum;
- setStorageInHeaderCode(strSeq);
3,使用DBSequence类型在数据库端创建Trigger给表的字段赋值,在EO中将该字段的类型设置为DBSequence。
优:避免断号缺:界面中显示的值与最终commit保存到数据库中的值不同。
- CREATE OR REPLACE TRIGGER ASSIGN_SVR_ID
- BEFORE INSERT ON SERVICE_REQUESTS FOR EACH ROW
- BEGIN
- IF <strong>:NEW.SVR_ID IS NULL</strong> OR <strong>:NEW.SVR_ID < 0</strong> THEN
- SELECT SERVICE_REQUESTS_SEQ.NEXTVAL
- INTO :NEW.SVR_ID
- FROM DUAL;
- END IF;
- END;
Oracle入门教程:ADF中解决sequence断号问题利用Ant向Oracle中插入数据相关资讯 Oracle数据库 Oracle入门教程 oracle数据库教程
- Oracle数据库全球化 (03月01日)
- Oracle数据库日期过滤方法性能比较 (02/02/2015 13:20:26)
- Oracle数据库安装中端口被占用问题 (10/29/2014 07:42:24)
| - 在CentOS 6.6上搭建C++运行环境并 (10/10/2015 19:44:40)
- Oracle数据库无法使用localhost和 (11/14/2014 16:39:10)
- 使用SQLT来构建Oracle测试用例 (08/28/2014 06:17:41)
|
本文评论 查看全部评论 (0)