Spring Boot无法成功地将数据POST到db(ORA-00942)

问题描述 投票:0回答:1

我是Spring Boot的新手。我在创建新数据(POST)的问题上卡了一整天。错误显示我没有成功连接到数据库(ORA-00942)。

由于一些隐私问题,我不能通过我的设备复制粘贴我的工作。因此,我将尽力描述我的逻辑,并打出我的部分代码。任何想法都将是巨大的帮助! 非常感谢!

  1. 我这里有五个包,基本分类为(1.)SpringBootApplication包,(2.)Repository包(3.)Service包(4.)Controller包(5.)实体包
  2. 基本上,我在(1.)SpringBootApplication包中没有编辑,它本来就是默认的。
  3. 在我的(5.)Entity包中,我写了一个与我的db匹配的Entity类。假设这个Entity的类名叫做 TitleOfMyDb. 在这里,我正确地写了对应的@id,也正确地写了setter和getter。
  4. 在(3.)Service包中,有一个Interface和一个类。类基本上就是接口的实现。现在,这就是服务类的删减实现。
@Autowired 
private ExRepository exRepository;

@Overrride
public TitleOfMyDb createExampleMethod(String a, String b){
TitleOfMyDb titleOfMyDb = new TitleOfMyDb();
titleOfMyDb .setA(a);
titleOfMyDb .setB(b);
return exRepository.save(titleOfMyDb) //save method is originated from Repository instinctively.
  1. 在我的(4.)Controller包中,我有一个类是ExController。
 @Autowired  
private ExService exService;

 @GetMapping("/test") 
public TitleOfMyDb createSomething
(@RequestParam(value="aa") String a, @RequestParam(value="bb") String b){
TitleOfMyDb object = exService.createExampleMethod(a, b)
return object;
}
  1. 在我的(2)Repository包中,我没有添加更多的代码,而是保留了原来的样子,因为它已经有了一个本能的方法,可以让我把我的实体保存在仓库里。

之后,当我尝试运行我的spring boot时,它显示ORA-00942的错误。另外,当我输入 http:/localhost:8080test。 通过我的浏览器,我只能看到什么都没有,只有错误。错误信息相当复杂,对不起,我真的不能通过我的设备复制粘贴。基本上,它不能正常连接到我的db.任何帮助或指导我的逻辑和思维过程真的很感激。

java sql spring-boot post native-sql
1个回答
0
投票

ORA-00942:表或视图不存在。

"你试图执行一条SQL语句,该语句引用了一个表或视图,而这个表或视图要么不存在,要么你没有访问权限,要么属于另一个模式,而且你没有用模式名称来引用该表。"

我看看数据库表是否正确,再检查一下SQL查询。

参考一下。https:/www.techonthenet.comoracleerrorsora00942.php


0
投票

错误的意思是你没有权限或你的表不正确。请检查实体。请确保数据库中存在TitleOfMyDb表。如果你没有特定的表与注释@表hibernate自动选择你的名字实体TitleOfMyDb。

© www.soinside.com 2019 - 2024. All rights reserved.