Welcome 微信登录

首页 / 数据库 / MySQL / Oracle入门教程:ADF 中使用Sequence的方法总结

1,在EO的属性中使用Groovy
优:简单直接缺:断号
  1. (new Oracle.jbo.server.SequenceImpl("XXXX_SEQ",adf.object.getDBTransaction())).getSequenceNumber()  
2,在EO对应的java类的create方法中对属性赋值优:可以产生复杂的Sequence值缺:断号
  1.       SequenceImpl sequence =  
  2.           new SequenceImpl("XXX_SEQ", getDBTransaction());  
  3.       oracle.jbo.domain.Number seqNum = sequence.getSequenceNumber();  
  4.       String strSeq = "SIH_" + seqNum;  
  5.       setStorageInHeaderCode(strSeq);  
3,使用DBSequence类型在数据库端创建Trigger给表的字段赋值,在EO中将该字段的类型设置为DBSequence。
优:避免断号缺:界面中显示的值与最终commit保存到数据库中的值不同。
  1. CREATE OR REPLACE TRIGGER ASSIGN_SVR_ID  
  2. BEFORE INSERT ON SERVICE_REQUESTS FOR EACH ROW  
  3. BEGIN  
  4. IF <strong>:NEW.SVR_ID IS NULL</strong> OR <strong>:NEW.SVR_ID < 0</strong> THEN  
  5. SELECT SERVICE_REQUESTS_SEQ.NEXTVAL  
  6. INTO :NEW.SVR_ID  
  7. FROM DUAL;  
  8. END IF;  
  9. 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)
表情: 姓名: 字数