oracle从增(自增)序列在hibernate中的配置方法

oracle从增(自增)序列在hibernate中的配置方法

ID:12184129

大小:21.64 KB

页数:5页

时间:2018-07-16

oracle从增(自增)序列在hibernate中的配置方法_第1页
oracle从增(自增)序列在hibernate中的配置方法_第2页
oracle从增(自增)序列在hibernate中的配置方法_第3页
oracle从增(自增)序列在hibernate中的配置方法_第4页
oracle从增(自增)序列在hibernate中的配置方法_第5页
资源描述:

《oracle从增(自增)序列在hibernate中的配置方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Oracle从增(自增)序列在Hibernate中的配置方法www.MyException.Cn   发布于:2012-10-0717:28:51   浏览:0次Oracle自增序列在Hibernate中的配置方法在很多情况下,我们使用Hibernate在已经建立好数据库的基础上。在oracle中,如果已经建立好的数据库中使用了sequence,则可以按照下面的步骤把它引入到Hibernate中:    1、在oracle首先创建sequenceCREATESEQUENCESEQ_IDcreatesequenceseq_idINCREMENTBY1increm

2、entby1增量1STARTWITH1startwith1从1开始NOMINVALUEnominvalue没有最小值NOMAXVALUEnomxmvalue没有最大值NOCYCLEnocycle不循环NOCACHEnocache不缓冲NOORDER;noorder没次序   2、在你的hbm.xml中的配置seq_id    这样再

3、插入数据的时候,Hibernate回自动生成如下语句:hibernate:selectseq_id.nextvalfromdualhibernate:insertintoYXJK.T_YXJK_WHRYTXL(XM0000,ZW0000,LXDH00,SJHM00,DZYJ00,IP0000,ID0000)values(?,?,?,?,?,?,?)   自动生成下一个序列值,然后将对象插入表中。  在使用的时候需要注意,Hibernate对于sequence的主键的要求是一定要是shor,long,或者integer根据hibernate的文档,有两种方式实现

4、实体对象的主键自动增长。第一种:设置ID的增长策略是sequence,同时指定sequence的名字,最好每个表建一个sequence,此种做法就如同MS-SQL,MY-SQL中的自动增长一样,不需要创建触发器,具体的oracle数据库脚本及hibernate配置文件如下:[1]oracle数据表的创建脚本: CREATETABLEDEPARTMENT(IDNUMBER(19,0)DEFAULT'0'NOTNULL,NAMEVARCHAR2(255)NOTNULL,DESCRIPTIONCLOB);ALTERTABLEDEPARTMENTADDCONSTRAI

5、NTPRIMARY_0PRIMARYKEY(ID)ENABLE;ALTERTABLEDEPARTMENTADDCONSTRAINTUK_DEPARTMENT_1UNIQUE(NAME);CREATESEQUENCEDEPARTMENT_ID_SEQMINVALUE10000MAXVALUE999999999999999999999999INCREMENTBY1NOCYCLE; 创建DEPARTMENT表,并为DEPARTMENT表创建一个单独的SEQUENCE,名字为SEQUENCE_ID_SEQ,并不需要创建触发器。[2]hibernate映射文件的配置:<

6、?xmlversion="1.0"?>

7、ratorclass="sequence">DEPARTMENT_ID_SEQ 在hibernate映射文件中,对ID的生成策略选择sequence,指定sequence的名字DEPARTMENT_I

8、D_SEQ就可以了,当你保存新对象的时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。