从Java访问NexusDB

时间:2009-06-18 14:57:07

标签: java sql jdbc odbc nexusdb

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

备选方案1:

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

备选方案2:

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

我想知道是否有人这样做,什么是最好的解决方案?

感谢阅读。

4 个答案:

答案 0 :(得分:2)

备选方案1:

不可能。

unixODBC需要linux驱动程序,并且没有nexusDB。

备选方案2:

没找到。

到目前为止的解决方案

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

答案 1 :(得分:1)

我在葡萄酒下运行nexusDB取得了一些成功。

我能够设置一个WINEPREFIX,按照here的说明进入葡萄酒的odbc管理面板(默认情况下它会输入unixODBC,正如Macarse所说,那已经死了结束),在那里设置DSN并测试它是否可以访问数据。

我接下来尝试的是安装win32 PHP并使用odbc_connect编写快速而肮脏的测试。在浪费了大量时间意外地使用linux php二进制文件并想知道为什么它不能使用(内置于win32 ONLY)函数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传递 - 相对路径也很好)

是的,我知道这是一个死讯,但它是一个非常小众的情况,没有很多信息使得nexusdb和odbc在linux上发挥得很好,如果这些信息可用的话几个月前,当我在谷歌上搜索并遇到这个帖子时,它可以为我节省了很多时间。希望别人觉得它有用。

答案 2 :(得分:0)

如果您通过.NET连接到Nexus,您可以使用IKVM运行Java应用程序并通过.NET API连接吗?

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

最佳

安德斯

答案 3 :(得分:0)

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

如果您希望迁移到另一个嵌入式DBMS,我正在使用H2 Database用于Java,我必须说它非常好。嵌入式和客户端/服务器模式,跨平台,并且对于1M行以下的任何内容都非常快。支持您在嵌入式DBMS中拥有的任何功能,然后支持一些功能。