oracle 数据库导入,运行项目报:ORA-00942 表或视图不存在

在将数据从他人机器导入到本地Oracle数据库后,运行项目时遇到ORA-00942错误:表或视图不存在。问题源于Hibernate查询语句中的schema指定为'EAPSOFT',而本地数据库没有该用户。解决办法是删除或修改'hbm.xml'文件中"class"标签内的'schema'属性,使其匹配本地数据库用户。
摘要由CSDN通过智能技术生成
 

现在做一项目,之前连的别人的机器的数据,后来我把数据导入到本地数据库中运行,出错,如下:
Hibernate: select sum(rdb_alert_0_.EVENT_COUNT) as col_0_0_ from EAPSOFT.NEW_TOPICES rdb_alert_0_
- SQL Error: 942, SQLState: 42000
- ORA-00942: 表或视图不存在

把该SQL语句在PLSQL Develop中运行也出错,把上述语句中的"EAPSOFT."删除,则运行成功;

分析Oracle中的SQL语句可以发现:
1).select sum(rdb_alert_0_.EVENT_COUNT) as col_0_0_ from EAPSOFT.NEW_TOPICES rdb_alert_0_
该语句查询的是用户"EAPSOFT"所拥有的数据,前缀代表的就是某个用户,而在我本地,我没有创建名叫"EAPSOFT"的用户,当然它也没有相关的数据,所以它查询失败。

2).为什么Hibernate会在此语句中加上"EAPSOFT"前缀呢?
分析发现:名叫NEWTOPICES.hbm.xml的文件中,有如下语句:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值