.Hibernate 的Sequence .Oracle中,有的Column要自动增长,该列基本上为主键,那么,就要给该Column创建Sequence。 例如:create sequence seq_id_forTest minvalue 1 start with 1 increment by 1 cache 20; 仅此还不够的,还要创建Trigger,可以设置为before insert触发器。 例如:create or replace trigger TRG_USERDUTY before insert on userduty for each row declare — local variables here begin select seq_id_forTest.nextval into :new.DutyNo from dual; end TRG_USERDUTY; 要说明的是:红色部分为表的名称,蓝色部分为第一步创建的Sequence的名字,紫色部分为Column的名称。 这样,在单纯的插入数据库时,就可以实现自动增长。这里说的单纯的插入,是指使用SQL的方式的插入。 但是,在Hibernate中,首先要把主键类型设置为Sequence,并设置名称。 例如:seq_id_forTest 这里,param name的值要与数据库中的Sequence名称一致。 如果采用Hibernate进行数据持久化,那么在第二部中创建的Trigger就必须删除,不然自动增长会每次增加2*increment by的值。。。。