字符节太长+org.hibernate.exception.SQLGrammarException: could not initialize a collection:

        楼主用oracle建立两张表,有外键关联,写好实体之后运行struts2自动创建的表。可以正常查看数据,保存数据,但是删除的时候就报错了,错误如图 楼主找这个问题找了半天,你说标识符过长吧,这不科学,表都已经建立,而且还保存数据进去了,后台debug也找不出问题,花了半天时间百度,看了许多案例但是没有一个和我一样。

         后面不知道怎么想到去看后台自动创建表进oracle的sql语句(因为楼主的环境是屏蔽掉了sql语句的)

一看就发现问题了,原来我两个实体,建表的时候是建三张表,比如A,B表,第三张表是A+B的表名,结果表名超出30字符,建立不了,我把A,B的表名缩短了就正常了。

具体是什么机制,因为是新人暂时不清楚,先记下,后续有时间再去详细琢磨下

你可能感兴趣的:(字符节太长+org.hibernate.exception.SQLGrammarException: could not initialize a collection:)