我正在用ruby 1.8.7和WATiR测试Web应用程序,我想尽可能轻松地连接到H2数据库,我只能找到有关JDBC访问的信息。如果有一种方法可以使用JRuby来从Ruby执行此操作,但是我需要使用Ruby,主要是因为我的WATiR代码已写入其中,并且希望仍然如此。有没有办法从没有JRuby的Ruby连接到H2数据库?
所有可能的解决方案将被考虑,但我正在寻找一些简单的,因为我的数据库知识是有限的,我需要从Ruby/WATiR访问数据库(读取和写入)以测试网络上显示的内容前端。
编辑:我删除了一些无知,现在我知道JDBC是一个用于数据库访问的Java API,所以我现在正在寻找任何方式连接到H2数据库,以便我的Ruby/WATiR脚本可以访问它。
背景: 我有DBI和Sequel宝石一些经验,我有安装了Rails(这样我就可以开始与ActiveRecord的发挥,主要是),但愿意学习新的东西来解决这个问题。
让我们假设我不是一个好的Java编码器。我以前从未考虑过使用JRuby,所以我不完全熟悉它的工作原理。
解决方案 我最终得到了两人互相交谈,主要是由于托马斯穆勒的回答如下。我安装了PostgreSQL ODBC驱动程序,得到Sequel的工作并使用ODBC连接。使用Sequel的PG适配器连接到H2 PG服务器会导致一些我仍在处理的语法错误。我还没有试过DBI连接,但是我会这样做,因为它可能会让我更好地控制语法,如果我需要它。非常感谢Jeremy Evans的帮助解决了activerecord-jdbc-adapter和Sequel之间的冲突(在我的ruby路径中讨厌的pg.rb文件)以及管理Sequel。这并未列为答案,所以我可以给那些回答同时给与我情况相同的人提供反馈的人。
我已经安装了pg(不是ruby-pg),续集,dbi,dbd-odbc(加上手动修复文件,你可以问我一些细节),锄头,以及UN安装的activerecord-jdbc-adapter。
感谢您的解决方案的后续和结束。这应该对您和您处于相同情况的其他用户有很大的好处。 – 2011-04-06 15:21:41