2009-09-15 58 views
1

我看到IronRuby團隊記錄了using ActiveRecord in IronRuby with MSSQL - 它們表明適配器需要進行一些調整。IronRuby ActiveRecord和SQLite

interview on 8/11/2009,麥表示的IronRuby的一個主要的缺點:

的主要限制是,IronRuby的不支持基於C-Ruby庫的任何

這表明SQLite的取決於sqlite.dll的-Ruby庫可能不存在問題。然而,在同一次採訪,他說:

對於數據庫,你可以使用SQLServer的快車(這是免費的), 或任何基於.NET數據庫,像最近CSHARP-sqlite的端口。

這聽起來很有希望,但我對如何開始有點不知所措!我如何去連接Ruby的ActiveRecord到csharp-sqlite,或者我可以在哪裏尋找更多的指導?

我發現了更多write-up on IronRuby and SQLite,但我可能需要一些翻譯幫助?

當前的解決方案是將do_sqlite3移植到使用所有.NET API。 SQLite到.NET有幾個端口 ,但是還沒有被廣泛使用。對於1.0,我們將使用Ironruby-dbi gem 來通過Ruby DBI API使用基於.NET的數據庫;所以使用SQLExpress和 SQLServer將與適當的sqlserver適配器一起使用。我不確定DataMapper是否還有 do_sqlserver適配器,但我們會將其留給社區做。

這是否意味着我的技術堆棧可以去是這樣的:ActiveRecord的使用SQLiteRuby,SQLiteRuby被調整到使用的IronRuby-DBI(應該是變化不大,因爲這是Ruby的DBI API ??)然後IronRuby的,DBI有智能與基於.NET的數據庫(如c#sqlite)一起工作。當然,我需要一個適配器來介於ActiveRecord和SQLiteRuby之間......希望在那裏不需要更改?

建議,建議,提示?

+0

http://code.google.com/p/csharp-sqlite/ – jrhicks 2009-09-19 03:39:26

回答

3

您將無法按原樣使用activerecord。

您可以爲SQLite包裝ADO.NET提供程序,也可以幫助使用ironruby-dbi項目並提供正確處理sqlite的dbi適配器。從那時起,將它添加到rails是很容易的,因爲它需要用dbi連接替換連接。

雖然這是一個正在進行的工作,但在這一刻,大部分工作都圍繞着sql server,但我也希望讓sqlite在IronRuby上正常運行。

另一種方法是更改​​sqlite的活動記錄適配器以與ADO.NET提供程序一起工作(這可能需要最少的努力,但無法幫助rails社區)。我有什麼需要做的一個不錯的主意,使這一切工作,但我根本沒有時間做所有這些事情,很可惜。

+0

我喜歡的第3選擇,因爲我只對IronRuby進行桌面應用程序開發感興趣。有很多關於一個很好的GUI框架做文章Ruby社區,我認爲IronRuby的是體面的回答這個問題......但我只是不舒服,從ORM的.NET方法的愛。你認爲我應該學習一個基於.NET的ORM嗎?謝謝。 – jrhicks 2009-09-20 21:45:25

+0

我發現.NET OR/M與ironruby有些尷尬。原因是,他們必須做出大量使用泛型等做一個體面的工作,這需要很多美好的事物,從Ruby語言。我最喜歡的選擇是讓sqlite與ironruby一起工作,就是將它集成到ironruby-dbi中。從此以後,您可以使用其中的一個紅寶石或/ m,只需很少或不費力。我可以幫你,如果你,如果你彌補選項2或3卡住了,否則你將不得不耐心等待,直到同路人空來。 – 2009-09-20 22:08:42

0

您是否嘗試過使用SQLite適配器?它可能是開箱即用的。

雖然我沒有嘗試過。

+0

我該怎麼做才能鏈接到較低級別的ruby Sqlite gems,即開箱即用的SQLite adapater所依賴的?謝謝。 – jrhicks 2009-09-16 01:06:25

+1

如果他們沒有在IronRuby的工作,有人將不得不端口SQLite的ActiveRecord的適配器。這應該是很容易的,因爲SQLite的有.NET版本庫,它是非常相似的SQL Server庫(和它在IronRuby的偉大工程,我已經試過了)。 總之,如果SQLite的寶石不工作的IR,使用SQLite在IronRuby中對Rails會需要一些更多的工作:) – 2009-09-16 03:59:49

+1

什麼是SQLite的淨庫,類似於你已經使用了SQL Server庫? – jrhicks 2009-09-16 13:18:44