簡體   English   中英

如何使用帶有 DB2/400 數據庫的 JRuby 上的 DataMapper 在 Rails 3.1 上使用 Ruby?

[英]How do I use Ruby on Rails 3.1 with DataMapper on JRuby with a DB2/400 database?

我正在遺留 DB2/400 數據庫之上開發Rails 3.1應用程序。 由於對遺留模式的更好支持,我選擇使用DataMapper而不是ActiveRecord作為 ORM。 該應用程序將部署在JRuby上。

在這種情況下,訪問 DB2 數據庫的最佳方式是什么?

我最初的研究表明這將是微不足道的,因為使用 JRuby on Rails 的主要賣點之一是您可以獲得 JDBC,因此可以訪問地球上幾乎任何數據庫。

但是,這似乎不一定正確,特別是,似乎沒有任何 ActiveRecord 或 DataMapper/DataObjects 的驅動程序可以在 Z82269B9B71AB4A7732F6958610214 上使用 DB2。

我必須編寫自己的驅動程序嗎? 通過閱讀各種現有 DataObjects/DataMapper JDBC 驅動程序的源代碼,這應該不會太難,但這是我寧願避免的。

是否有任何現成的解決方案(庫、gem、博客文章、教程)用於將 DB2/400 與 JRuby on Rails 與 DataMapper 結合使用? 如果沒有,我該怎么做?

activerecord-jdbc-adapter內置了對 DB2 的支持。 您有特定的架構問題嗎? 我已經能夠讓 ActiveRecord 與幾個遺留模式一起工作。

更新

對於不匹配的表名,只需輸入

set_table_name "my_table_name"

在 model 中。 您可以指定關系中使用的 class 和/或外鍵:

has_many :somethings, :class_name => 'something_else', :foreign_key => 'something_else_id'

(有關更多選項,請參閱http://apidock.com/rails/ActiveRecord/Associations/ClassMethods )。

對於復合主鍵,請參閱復合主鍵gem。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM