Rails rails 7 如何连接 ibm_db DB2 数据库?

syutran · 2022年03月23日 · 最后由 ywjno 回复于 2022年03月23日 · 487 次阅读

呆了好久......

rails new demo -d ibm_db 会报 database 的错误,意思是没有 ibm_db 的相关驱动,意思是不支持 db2 数据库。

  • 1、GO 过了,说是要在 activerecord.rb 里添加 ibm_db 的选项。

但我在 gems 的 activerecord 7.0.* 里就没找到可以添加的位置。

  • 2, gem install ibm_db

这是安装 ibm_db 的 gem,不解决 rails new demo -d ibm_db 的问题。

  • 3、IBM 官网说法

卸载当前的 ibm_db,去客户端的 libsql/lib 下去 gem install 一个 ibm_db,当然这个更老。

  • 4、ibm_db 的主页

ibm_db 5.2.0 最高支持 6.0.x

rails 7 不支持 DB2 数据库 ?

https://github.com/ibmdb/ruby-ibmdb/issues/127#issuecomment-1056241347
根据上面的链接,确实不支持 rails7。不过贡献者正在努力。

ruby 6 又不是不能用?你必须用到 rails 7 的什么新特性吗?

@pynix 我想用 rails 7 的 hotwired,importmap, tailwindcss。

rails 6 里需要手工配置,不定哪个搞不好就掉坑里好久,rails 7 在 new 时一气呵成,省好多配置。

对 syutran 回复

那为什么又非要用 ibmdb 呢?

对 pynix 回复

db2 是公司无法改变的现实。兄台莫非有其它连接 DB2 的方法?

对 syutran 回复

没有。

对 pynix 回复

建议你用 6.0 吧,ibmdb 支持估计要挺久的。

对 pynix 回复

谢谢您。我回到 6.0 去,虽然有好多坑在前面。

要不看看 jruby 能否跑 rails 7 吧,好歹可以用 jdbc 的 db2 来连接数据库

需要 登录 后方可回复, 如果你还没有账号请 注册新账号