遇到一个奇怪的,关于oracle Hibernate中的Date和序列Idoracle表:
create table tb_bill (
bill_id INTEGER not null,
shop_id INTEGER,
bill_content VARCHAR2(200),
bill_handler VARCHAR2(20),
billdate DATE,
constraint PK_TB_PRICEBILL primary key (bill_id)
);
序列:
create sequence SEQ_TB_BILL配置文件:
<id name="id" unsaved-value="0">
<column name="bill_id"/>
<generator class="sequence">
<param name="sequence">SEQ_TB_BILL</param>
</generator>
</id>
<property name="shopId" column="shop_id"/>
<property name="billcontent" column="bill_content"/>
<property name="billHandler" column="bill_handler"/>
<property name="billDate" column="billdate" type="" type="timestamp"/>
bean:
private int shopId;
private String billcontent;
private String billHandler;
private Date billDate;
方法就不写了,都是自动生产的!
按照,我对bean进行保存:
Bill model = new Bill();
model.setBillcontent("neirong");
model.setBillHandler("handler");
model.setBillPrice(123.02);
model.setShopId(2);
BillDAO.save(model);
System.out.println(model.getId());问题出现再那个Date型数据库,当new一个java.util.Date()再保存进去的时间是正常的,但是那个序列bill_id,就出现问题,出现的数字超级大,导致超出了int范围,如果把数据库中的billDate字段去掉,一切正常,bill_id也按照正常保存。
本人在其他类中次方法都是正常。唯独这个不正常。其他类也又时间Date,这个现象极度郁闷,整整搞了两天。后来就把时间自动从数据库得到保存!谁能告诉我这里到底怎么回事?不胜感激!
create table tb_bill (
bill_id INTEGER not null,
shop_id INTEGER,
bill_content VARCHAR2(200),
bill_handler VARCHAR2(20),
billdate DATE,
constraint PK_TB_PRICEBILL primary key (bill_id)
);
序列:
create sequence SEQ_TB_BILL配置文件:
<id name="id" unsaved-value="0">
<column name="bill_id"/>
<generator class="sequence">
<param name="sequence">SEQ_TB_BILL</param>
</generator>
</id>
<property name="shopId" column="shop_id"/>
<property name="billcontent" column="bill_content"/>
<property name="billHandler" column="bill_handler"/>
<property name="billDate" column="billdate" type="" type="timestamp"/>
bean:
private int shopId;
private String billcontent;
private String billHandler;
private Date billDate;
方法就不写了,都是自动生产的!
按照,我对bean进行保存:
Bill model = new Bill();
model.setBillcontent("neirong");
model.setBillHandler("handler");
model.setBillPrice(123.02);
model.setShopId(2);
BillDAO.save(model);
System.out.println(model.getId());问题出现再那个Date型数据库,当new一个java.util.Date()再保存进去的时间是正常的,但是那个序列bill_id,就出现问题,出现的数字超级大,导致超出了int范围,如果把数据库中的billDate字段去掉,一切正常,bill_id也按照正常保存。
本人在其他类中次方法都是正常。唯独这个不正常。其他类也又时间Date,这个现象极度郁闷,整整搞了两天。后来就把时间自动从数据库得到保存!谁能告诉我这里到底怎么回事?不胜感激!
解决方案 »
- 请教下Ora-12547 ora-12518错误问题,内有监听日志
- 空值字段匹配问题
- 有没有类似oracle的帮助文档的《concepts Guide》之类的纸质的书卖,中英文皆可。
- management server启动不了
- 高分求教,导出有long类型字段表的问题,在线等
- 请问10g是不是包含9i的全部功能呢?
- 装了个oracle问题来了 请大家帮忙解决一下~!!!!!
- 我想给一用户test授于DBA角色,但 在sqlplus下,grant dba to test;出错:不存在作用“dba”???
- 日期问题,请指教!
- rank()over()的用法求教
- 请教如何写这个SQL条件
- oracle 锁表原因
create sequence SEQ_TB_BILL START WITH 1 INCREMENT BY 1 maxvalue 10000