如何使用java代码在单个数据库中一次连接多个模式

Posted

技术标签:

【中文标题】如何使用java代码在单个数据库中一次连接多个模式【英文标题】:How to connect multiple schema at a time in the single database using java code 【发布时间】:2014-03-19 10:27:59 【问题描述】:

我有这样一个场景,

使用java代码一次将多个dbuser连接到同一个数据库, 我必须使用 Java 加入来自 2 个模式的表,请告诉我该怎么做。

For ex :
emp_stg schema
emp table 
Id and name


Dept_stg schema
dept table
Deptno,Id,

在 oracle 中,我们可以使用点运算符登录到另一个模式, 对于现在 EMP dbuser 中的 m,我必须从 dept db 用户连接表 查询类似于dis

select id,deptno from emp,dept_stg.dept 

这个查询我必须使用 Java JDBC 运行,所以我使用了 proeperty 文件,在该文件中我提供了与数据库的 JDBC 连接,但我无法在单个属性文件中连接多个模式 任何人都可以请帮助

【问题讨论】:

【参考方案1】:

在给定的示例中,您没有登录到第二个架构。模式“dept_stg”的所有者(或分别具有必要权限的用户)已将表 dept 的 SELECT 权限授予另一个模式 - 这里是 emp_stg。这允许模式/用户 emp_stg 查询其他模式中的表。

所以这仅指数据库。您可以使用 Java 创建与数据库的连接,并将凭据仅用于模式 emp_stg。不需要多个连接。由于该用户有权访问第二个模式,您应该发送查询

SELECT id, deptno FROM emp, dept_stg.dept 

没有任何问题。

【讨论】:

以上是关于如何使用java代码在单个数据库中一次连接多个模式的主要内容,如果未能解决你的问题,请参考以下文章

能够在 PyQt5 中一次打开多个对话框的单窗口模式?

在单个解析器中一次创建两种类型的数据 (Graphql + Prisma)

如何在 Spark 中一次对多个列进行聚合

如何在Python中一次运行多个while循环[重复]

单个 java 线程如何一次执行多个本机方法?

如何在 SpriteKit 中一次引用多个 SKNode?