欢迎来到天天文库
浏览记录
ID:12184129
大小:21.64 KB
页数:5页
时间:2018-07-16
《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_I8、D_SEQ就可以了,当你保存新对象的时
7、ratorclass="sequence">DEPARTMENT_ID_SEQ 在hibernate映射文件中,对ID的生成策略选择sequence,指定sequence的名字DEPARTMENT_I
8、D_SEQ就可以了,当你保存新对象的时
此文档下载收益归作者所有