kirk 发表于 2019-7-4 18:57:06

数据库从H2更换为ORACLE数据库后,数据库载入错误

今天把数据库从H2上更换到ORACLE上,配置成功能开始载入。大部分表能成功生成,有几个表生成失败,提示ORA-00972: identifier is too long
求解决办法
部分日志(全部日志已上传到附件):
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
{stmnt 1210428112 CREATE INDEX BBS_FORUMINFO_subjectPublishAble ON BBS_FORUMINFO (xsubjectPublishAble)}
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.slice.jdbc.DistributedJDBCBrokerFactory.synchronizeMappings(DistributedJDBCBrokerFactory.java:126)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:98)
    ... 39 more

xadmin 发表于 2019-7-5 16:12:30

O2OA对oracle版本有要求,要12c以上

longde_tiankong 发表于 2020-2-15 10:28:53

哈哈,我11g也是碰到这个鬼,网上查了一下oracle11g及之前的版本对数据库表名称长度限制为30,所以至少要12C以上。。。。或者o2oa官方数据库表名称都要改成30以内

论坛管理员 发表于 2020-2-17 10:29:32

所以要求12c以上
页: [1]
查看完整版本: 数据库从H2更换为ORACLE数据库后,数据库载入错误