昨天把数据库从oracle 11g移到到oracle 9g向用用户展示的时候,出现了
2008-08-19 16:18:17,427-[TS] WARN main org.hibernate.util.JDBCExceptionReporter - SQL Error: 942, SQLState: 42000
2008-08-19 16:18:17,427-[TS] ERROR main org.hibernate.util.JDBCExceptionReporter - ORA-00942: 表或视图不存在
这个错误,我的错误原因有2个:
1. 先前在11g上用着似乎也是这个问题,每次都说序列不存在,我用的主键为varchar2(10),在hibernate映射配置文件文件指定对象的主键生成方式为native,就出现了这样的问题。
网上学习了解到是hibernate序列没有在oracle 11g中创建的问题,在pl/sql中输入
create sequence hibernate_sequence start with 1 increment by 1 建立序列后就可以了,当然在 increament by 1的后面还可以buffer by 这个选项缓存,这个就看自己实际需要与否了。设置好这些后就可以了,若还有错误就看看原因2了。
关于native和sequece的区别其实在oracle里面是看不到的,mysql就不支持sequence.
2.在做数据库平台移植的事后移动要注意hibernate映射文件中的<class name="qx.bo.QxUserRole" table="QX_USER_ROLE"
schema="SYSMAN" >
中的schema是否和当前的数据库对应,迁移到oracle9g后,我的schema应该为SYSTEM.而11g为sysman.直接迁移,尽管creare sequence了。但是在运行的过程中也会出现ORA-00942: 表或视图不存在的错误。关于schema视自己自己具体环境定义名字。我在11g上用sysman登录数据库,在9g上用system登录数据,所以在9g中用system,在11g中sysman.schema需要修改后才能正确读取映射文件和查询数据库。
以上是我的个人错误修改历史及经验,若有什么错误,请大家指出!
近期要做webgis的东西,基于mapxtreme for java,同时也用着struts1.2,hibernate3.2等,希望能够找到交流的朋友,互相学习。
我的第一篇关于技术方面的文章,希望对大家有所帮助。在编程中,很多error都是网上的朋友帮忙解决的,在此谢谢大家!同时,我也会把自己的一些经验开始在这里和大家共享学习。
分享到:
相关推荐
ORA-00942: 表或者视图不存在 ORA-00942 是另一个常见的错误信息,通常发生在 SQL 语句中引用了一个不存在的表名或视图名。这种错误通常是由于开发者在编写 SQL 语句时,忘记了某个表名或视图名,导致 Oracle 无法...
在这样的项目中,`hibernate-ora-c3p0-05`可能是一个配置文件或库,表示Hibernate与Oracle数据库的特定配置,其中c3p0是一个开源的JDBC连接池,用于管理数据库连接。配置这些内容是确保Hibernate能有效连接Oracle的...
企业费用管理系统是一个典型的基于SSH(Struts2、Spring、Hibernate)框架和Oracle数据库的Web应用程序,主要用于企业内部的费用审批、报销、统计和管理。这个系统通常包括多个模块,如用户管理、费用申请、审批流程...
在企业费用管理系统中,Hibernate可以方便地处理费用记录、部门信息、员工信息等实体对象与Oracle数据库表之间的映射,实现了数据的增删改查功能。 Oracle数据库则提供了稳定、高性能的数据存储平台。它支持复杂的...
在Oracle SQL中,我们可以为表或视图指定别名,但不使用`as`关键字,例如`select a.appname from appinfo a`是正确的语法,而`select a.appname from appinfo as a`则是错误的。这是为了避免与PL/SQL中的`as`关键字...
企业费用管理系统是一个典型的基于SSH(Struts2、Spring、Hibernate)框架和Oracle数据库的企业级应用。这个毕业设计项目提供了一套完整的解决方案,包括系统的设计、开发、测试以及部署,学生可以借此深入理解如何...
- **配置视图**:定义JSP页面或FreeMarker模板,用作视图层展示。 #### 三、综合应用 - **前端请求处理**:用户通过浏览器发送HTTP请求至服务器端。 - **Struts2分发**:Struts2框架接收到请求后,根据配置的拦截...
安装Oracle时需要注意,避免在安装目录中使用中文或空格,并且最好不安装在系统盘,以防数据丢失。卸载时,除了通过正规途径卸载,还需手动清理相关文件夹和服务。 Oracle的不同版本如8i、9i、10g、11g和12c提供了...
同时,下载并安装Oracle数据库客户端,配置相应的tnsnames.ora文件以便连接到Oracle服务器。 **步骤2:获取Appfuse2源码** 从Appfuse官方网站或其他可信的源下载Appfuse2的源码。解压到本地目录。 **步骤3:配置...
8. **java+mysql中保存图片及显示上传的图片struts+hibernate -.mht** - 这可能是关于使用Java、MySQL、Struts和Hibernate构建Web应用的教程,特别是关于如何处理用户上传的图片,包括存储在数据库中或文件系统上,...
在这个“一个通用数据库操作类”的实例中,我们看到它支持SQL(Structured Query Language)和ORA(Oracle数据库的简称),这意味着这个类可以应用于多种数据库环境,特别是SQL标准兼容的数据库(如MySQL、...
1. **Ora 10G SQL Reference.chm**:这是Oracle数据库的SQL参考手册,其中包含了关于Oracle 10g版本的SQL语法、查询、数据操作、索引、视图等全面知识。对于开发人员来说,理解和使用Oracle数据库系统至关重要。 2....