hibernate为何无法自动创建oracle 的表分析

    技术2022-05-19  19

    在hibernate.cfg.xml配置文件中:

      <!-- Drop and re-create the database schema on startup -->       <property name="hbm2ddl.auto">create</property> 

    这样的话hibernate就会自动创建表,但结果总会报出如下错误:ERROR JDBCExceptionReporter:234 - ORA-00942: 表或视图不存在,这是为什么呢?

     

    经过分析,Oracle数据库与Mysql的差别很大,Oracle数据库中,一个数据库下可以有多个表空间,多个用户可以有不同的表空间,如果用户A的表空间中已经存在table1,则使用如上方式在用户B的表空间再自动创建table1是不行的。

     

    所以,可以删除用户A的表空间的重名table1,然后再用hibernate自动加载创建表即可;或者创建一个新的数据库空间。


    最新回复(0)