【问题标题】:Accessing NexusDB from Java从 Java 访问 NexusDB
【发布时间】:2009-06-18 14:57:06
【问题描述】:

我正在尝试使用 java 从名为 NexusDB 的嵌入式数据库中获取信息。

备选方案 1:

我在NexusDB website 中读到有一个 ODBC 驱动程序,所以我可以将它与 unixODBC 一起使用。然后我需要按照here 的说明做一个 JDBC-ODBC 桥。

备选方案 2:

获取某种应用程序以将 NexusDB 数据库迁移到另一个数据库。 想知道一个。

我想知道是否有人遇到过这种情况,最好的解决方案是什么?

感谢阅读。

【问题讨论】:

    标签: java sql jdbc odbc nexusdb


    【解决方案1】:

    备选方案 1:

    不可能。

    unixODBC 需要 linux 驱动程序,nexusDB 不需要。

    备选方案 2:

    没有找到。

    目前的解决方案

    使用 delphi 编写一个小型 web 服务或获取 odbc 并在小型代理中使用它。 换句话说,不是连接到 nexusdb 服务器,而是连接到专用应用程序或 web 服务传递信息,并且该应用程序确实连接到 nexusd 并写入数据。

    【讨论】:

    • 你需要在java之外使用这个db吗?您可以考虑迁移到具有适当 jdbc 支持的非嵌入式数据库引擎。
    • 我需要查询的信息来自应用程序的输出,该应用程序是一个包含 nexusdb 嵌入式数据库的 zipFile。我无法移动到非嵌入式数据库。同样,nexusdb 不仅是嵌入式的,它只是这种特殊情况。
    【解决方案2】:

    我在 wine 下运行 nexusDB 取得了一些成功。

    我能够设置一个 WINEPREFIX,按照说明here 进入 wine 的 odbc 管理面板(默认情况下它通过管道连接到 unixODBC,正如 Macarse 指出的那样,这是一个死胡同),在那里设置一个 DSN 并测试它是否可以访问数据。

    接下来我尝试安装 win32 PHP 并使用 odbc_connect 编写一个快速而肮脏的测试。在意外地使用 linux php 二进制文件并想知道为什么它不能使用(仅在 win32 上内置)函数 odbc_connect 浪费了大量时间之后,我确实让它工作了。

    提示:为了避免让自己感觉像用头撞砖墙,请记住,在这种环境中运行 php 脚本的任何尝试都必须是这样的

    WINEPREFIX=/home/you/yourprefix wine php c:\phptest.php

    不是

    WINEPREFIX=/home/you/yourprefix php c:\phptest.php

    第二个版本将使用 linux php 二进制文件。在运行第二个版本几十次之后感觉很愚蠢,并且在意识到出了什么问题之前搜索了一些错误 - 我想我需要晚点起床才能在凌晨 4 点继续工作:(

    (如果您愿意,可以将上述示例中的 c:\ 路径传递为 /home/you/yourprefix/drive_c/whatever - 相对路径也可以)

    是的,我知道这是一个 necro 帖子,但这是一个非常小众的情况,没有很多信息可以让 nexusdb 和 odbc 在 linux 上运行良好,如果这些信息对我来说有一些几个月前,当我在谷歌上搜索并遇到这个线程时,它本可以为我节省大量时间。希望其他人觉得它有帮助。

    【讨论】:

      【解决方案3】:

      如果您通过 .NET 连接到 Nexus,也许您可​​以使用 IKVM 运行您的 Java 应用程序并通过 .NET api 连接?

      否则我认为您自己的“到目前为止的解决方案”听起来不错。

      最好的 安德斯

      【讨论】:

        【解决方案4】:

        由于它是嵌入式的(并且您可能拥有对机器的完全访问权限),那么如何将数据库文件复制到 Windows 系统,设置 NexusDB 及其 ODBC 驱动程序,然后在该机器上使用 ODBC-JDBC 桥接呢?桥运行后,您可以设置一个新的与 JDBC 兼容的 DBMS,您可以选择连接并使用一些代码从 NexusDB 中选择并插入到您的新数据库中。

        如果您希望迁移到另一个嵌入式 DBMS,我将 H2 Database 用于 Java,我不得不说它真的很棒。嵌入式和客户端/服务器模式,跨平台,对于 1M 行以下的任何内容都非常快。几乎支持您在嵌入式 DBMS 中拥有的所有功能,甚至还有一些。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-10-20
          • 2014-10-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多