隨筆-9  評論-168  文章-266  trackbacks-0
Oracle 數據庫:
Hibernate annotation :
@Column(name="NUMBERS",columnDefinition="NUMBER(20,3) default 0 ")
public BigDecimal getNumbers() {
return numbers;
}

異常:
Caused by: org.hibernate.HibernateException: Wrong column type: NUMBERS, expected: NUMBER(20,3) default 0 
at org.hibernate.mapping.Table.validateColumns(Table.java:261)
at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1083)
at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:116)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:317)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:915)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:730)
... 122 more
解決方法:
@Column(name="NUMBERS",columnDefinition="number(20,3) default 0 ")
public BigDecimal getNumbers() {
return numbers;
}
原因:hibernate 在列定義選項中,數據庫中的所有類型應為小寫number. hibernate在此直接面對數據庫,所以區分大小寫.
posted on 2011-12-05 09:21 紫蝶∏飛揚↗ 閱讀(9887) 評論(1)  編輯  收藏 所屬分類: Hibernate 、數據庫

評論:
# re: Hibernate 注解映射 設置默認值的異常及解決方法 2013-09-25 16:26 | 阿斯蒂芬
四諦法  回復  更多評論
  

只有注冊用戶登錄后才能發表評論。


網站導航:
 
湖北快3号码表 广西十一选五历史开奖结果 福彩3d福彩中心开机号 云南快乐10分分布图 江苏11选5前三走势图 东方财富网股票行情 青海省11选5最新开奖体彩 六彩开奖资料 股票配资网站排名 终于破了11选5出号规律 凤凰时时彩平台官网