繁体   English   中英

从多个数据库联接表

[英]Join tables from multiple databases

我有一个旧的Web应用程序,WAR包装。

它是在DAO文件中用硬编码的sql字符串编写的。 它连接到一个oracle数据库的多个模式。

select ... from schema1.one_table join schema2.other_table on...

我要实现的是使这与单独数据库中的模式一起使用。

建议我自动连接两个jdbcTemplate,并从中查询数据,然后在Java中执行联接过滤逻辑。

我闻到这是一个不好的解决方案,原因有几个。 我不想在Java中实现联接过滤,我敢肯定oracle引擎可以将其效率提高100倍。

如何重写查询以不仅指定架构,还指定数据库实例? 这可能吗?

我认为这不能直接通过JDBC完成。 您可以像在一个项​​目中一样执行以下步骤:

  • 借助DBA在数据库之间创建dblink。
  • 在主数据库中创建远程数据库表的同义词。

这样,您可以直接从一个数据库访问远程表,然后可以使用任何普通的JDBC / JDBCTemplate / Hibernate等运行您的业务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM