gpt4 book ai didi

ruby - 来自 ruby : JDBC connection to Sybase 的 sybase

转载 作者:数据小太阳 更新时间:2023-10-29 08:01:19 26 4
gpt4 key购买 nike

我需要从 Ruby 连接到一个相当古老的 Sybase 数据库。

我最终使用了 jRuby,只是因为我无法通过任何方式从 MRI 连接到 Sybase 来工作;如果有一种方法可以实际工作并且不疯狂地为旧版本的 Sybase 设置 Sybase 连接,那就太好了。但是,我在那一个上用头撞了一会儿墙,我想没有。

所以我最终使用了 jRuby,以便使用 JDBC。我确实有一个 JDBC.jar 文件可以连接到 Sybase。

我知道我可以在 jRuby 中编写原始 JDBC 代码,就像在 Java 中一样,使用 JDBC API。但是 JDBC API 很难使用,除此之外在转义/注入(inject)保护方面非常差(或者我可能只是不明白如何正确使用它,请参阅“难以使用”,至少对于我)。

是否有可以在 jRuby 中作为任意 JDBC 的包装器工作的 Ruby“包装器”库?如果我能让它与 ActiveRecord 一起工作,那可能很酷,但实际上并不一定需要。

我一直在使用 Ruby“DBI”包,它实际上运行良好。但是 Ruby DBI 包似乎没有人维护,而且越来越难以使用;有一堆拉取请求 (https://github.com/erikh/ruby-dbi/issues) 与使其在 1.9.3 下工作、消除弃用警告等相关。提交者没有关注这些请求。我给 github 项目所有者发邮件询问他们是否有机会被关注,并收到一个单词的回答“否”,没有任何解释。不太确定发生了什么。

那么,使用 jRuby JDBC 或其他工具从 Ruby 连接到 Sybase 有哪些选择?

(根据下面的需求,我会补充说我使用 RHEL 5 作为操作系统。但是如果答案是“一旦你安装了 FreeTDS,你就可以像这样做 X、Y 和 Z”,我大概可以管理自己安装 FreeTDS。过去,即使在主机上安装 FreeTDS 之后,我也被难住了)。

最佳答案

我为我的 Rails 3/Sybase ASE 15 项目使用了 JTDS jar 和 activerecord-jdbc-adapter gem。

我遇到的唯一问题是不真正支持 Sybase 的限制和偏移量。我最终写了我自己的访问者来进行限制和抵消工作。

你可能想看看这里:https://github.com/arkadiyk/ar-sybase-jdbc-adapter

关于ruby - 来自 ruby : JDBC connection to Sybase 的 sybase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9399037/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com