Java在其他Schema中插入表

时间:2018-05-18 17:28:07

标签: java sql properties schema sql-insert

在SQL Developer中使用INSERT和SELECT到其他模式时我可以因为同义词而无需插入INSERT和SELECT,但是如果我尝试在java代码中执行相同操作,它会说:

  

ORA-00942:表或视图不存在

通过

完成连接
Class.forName("oracle.jdbc.driver.OracleDriver");

从app.properties文件加载的属性

InputStream in = this.getClass().getClassLoader().getResourceAsStream("app.properties");

2 个答案:

答案 0 :(得分:0)

如果您使用架构和表名而不是同义词,它是否有效?

e.g。 SELECT * FROM HR.OFFICES(而不是SELECT * FROM SYNONYM_FOR_OFFICES)

如果这也不起作用,那么问题就在于plucins建议的数据库名称或凭据。

答案 1 :(得分:0)

通过使用includeSynonyms = true

连接Properties,它将起作用
java.util.Properties info = new java.util.Properties();
info.put("user", user);
info.put("password", pwd);
info.put ("includeSynonyms", "true");

然后使用连接属性

conn = DriverManager.getConnection(url, info);
以这种方式它将起作用