1

IronRuby チームは、IronRuby で MSSQL を使用して ActiveRecord を使用することを文書化しているようです。彼らは、アダプターにいくつかの調整が必要であることを示しています。

2009 年 8月 11 日のインタビューで、ジミーは IronRuby の主な欠点を次のように指摘しています。

主な制限は、IronRuby が C ベースの Ruby ライブラリをサポートしていないことです。

これは、sqlite.dll に依存する SQLite-Ruby ライブラリがおそらく問題外であることを示しています。しかし、同じインタビューで彼は次のように述べています。

データベースには、SQLServer Express (無料)、または最近の csharp-sqlite ポートのような .NET ベースのデータベースを使用できます。

それは有望に聞こえますが、私はどのように始めるかについて少し圧倒されています! Ruby の ActiveRecord を csharp-sqlite に接続するにはどうすればよいですか、または詳細なガイダンスはどこで探すことができますか?

IronRuby と SQLite に関する追加の記事を見つけましたが、翻訳の助けが必要でしょうか?

現在の解決策は、do_sqlite3 を移植してすべての .NET API を使用することです。SQLite を .NET に移植したものはいくつかありますが、まだ広く使用されているものはありません。1.0 には、Ruby DBI API を介して .NET ベースのデータベースを使用するための ironruby-dbi gem があります。そのため、SQLExpress と SQLServer を使用すると、適切な sqlserver アダプターで動作します。DataMapper 用の do_sqlserver アダプターがまだあるかどうかはわかりませんが、それについてはコミュニティに任せます。

これは、私の技術スタックが次のようになることを意味しますか: ActiveRecord は SQLiteRuby を使用し、SQLiteRuby は ironruby-dbi を使用するように微調整されます (これは Ruby DBI API であるため、少し変更する必要があります??)。 c#sqlite などの .NET ベースのデータベース。もちろん、ActiveRecord と SQLiteRuby の間を移動するためのアダプターが必要になります。

提案、アドバイス、ヒント?

4

2 に答える 2

3

そのままではactiverecordを使えなくなります。

SQLite 用の ADO.NET プロバイダーをラップするか、ironruby-dbi プロジェクトを支援して、sqlite を正しく処理する dbi アダプターを提供することができます。それ以降は、接続を dbi 接続に置き換える必要があるため、レールに追加するのは簡単です。

これは進行中の作業であり、現時点では SQL Server に関するほとんどの作業が行われていますが、Rails を使用して IronRuby で sqlite を適切に動作させたいと考えています。

もう 1 つの方法は、sqlite のアクティブ レコード アダプターを ADO.NET プロバイダーで動作するように変更することです (これはおそらく最小限の労力で済みますが、Rails コミュニティ以外では役に立ちません)。すべてを機能させるために何が必要かについてはかなり良い考えがありますが、残念ながら、これらすべてを実行する時間がありません。

于 2009-09-20T20:08:14.477 に答える
0

SQLite アダプターを使用してみましたか? すぐに使えるかもしれません。

個人的には試していませんが。

于 2009-09-15T19:37:52.780 に答える