Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java项目中实现UnityJDBC?_Java_Database - Fatal编程技术网

如何在Java项目中实现UnityJDBC?

如何在Java项目中实现UnityJDBC?,java,database,Java,Database,我有一个项目正在进行中,其全部内容是从不同供应商的多个数据库中查询数据(我指的是使用一个查询语句同时查询mysql、hsqldb、microsoft sql、oracle等数据库)。 虽然我是通过顺序加载数据库连接器的每个驱动程序并在数据库中顺序执行查询来实现的。但是项目架构是这样的,当我发送一个查询语句时,它应该同时进入每个数据库并检索所有相关数据库中可用的项。 我遇到了这个unityjdbc软件,一个中介软件,但不知道如何在我的java源文件中实现它,以便实现我的目标。我已经阅读了unity

我有一个项目正在进行中,其全部内容是从不同供应商的多个数据库中查询数据(我指的是使用一个查询语句同时查询mysql、hsqldb、microsoft sql、oracle等数据库)。 虽然我是通过顺序加载数据库连接器的每个驱动程序并在数据库中顺序执行查询来实现的。但是项目架构是这样的,当我发送一个查询语句时,它应该同时进入每个数据库并检索所有相关数据库中可用的项。 我遇到了这个unityjdbc软件,一个中介软件,但不知道如何在我的java源文件中实现它,以便实现我的目标。我已经阅读了unityjdbc用户手册,但并不清楚和直接。 请告诉我如何在我的java应用程序中实现这个unityjdbc驱动程序,并使用它成功地查询多个数据库。
如果您已经设法加载了所有特定于db的JDBC驱动程序,那么您不需要UnityJDBC来完成您想要做的事情


相反,您应该考虑在单独的线程中执行每个查询。这样,在查询下一个数据库之前,您不需要等待一个数据库返回其结果。

UnityJDBC允许您在一个SQL查询中查询多个数据库。您不能使用单独的线程来实现这一点,因为您将负责在Java程序中自己合并来自多个数据库的数据

设置步骤很简单:

  • 使用SourceBuilder应用程序指定数据库的JDBC连接信息

  • 测试访问多个数据库的示例查询。支持标准SQL。要引用不同数据库中的表,请在FROM子句中使用databaseName.tableName。
    例如:

    挑选* 从Database1.Table1 T1内部联接Database2.Table2 T2 ON T1.id=T2.id

  • SourceBuilder应用程序将提供一个XML配置文件作为输出,通常称为sources.XML。要在您自己的Java程序或任何支持JDBC的软件中使用此功能,连接URL为:
    JDBC:unity://sources.xml
    您可以指定sources.xml文件的绝对或相对路径

  • 他们的网站上有文档,或与他们联系以获得免费支持


    另一种快速入门的方法是使用开源查询软件SquirrelSQL附带的方法。该插件将允许您使用SQuirreL中的SQL查询任意数量的数据库,并将生成XML配置文件供您在其他程序中使用。该插件是开源和免费的。该插件还支持查询NoSQL数据库(如MongoDB)并将其与关系数据库(如MySQL和Postgres)连接起来。

    查看教程,需要注意的是,如果使用免费的SQuirreL插件,结果中的行数限制为100行。