0

さて、ついに愚かな ODBC の構成が完了したので、Postgres データベースからダンプした schema.rb ファイルを取得し、db:schema:loadSQL Server 用に構成された Rails プロジェクトでそれを実行しました。

さて、SQL Server データベースのすべてのスキーマを設定しますが、細かい点を除きます。つまり、外部キーは作成されません。

rake コマンドはエラーを表示せず、外部キーを追加していると言っています。しかし、それらは実際には追加されません。これは、コマンドの最後のビットです。

-- add_foreign_key("workhistoryform", "form", {:name=>"workhistoryform_form_rid_fkey", :column=>"form_rid", :primary_key=>"form_rid"})
   -> 0.0002s
-- initialize_schema_migrations_table()
   -> 0.0092s
-- assume_migrated_upto_version(0)
   -> 0.0942s
[earlz@earlzarch avp_msql_migrations]$

それで、問題は何ですか?Foreigner プラグインは SQL Server で動作しませんか? そうでない場合は、エラーか何かが表示されると思います...

4

2 に答える 2

2

わかりました、私はそれを修正しました。まあ、とにかくそれをハッキングしました。Foreigner には実際には SQL Server のサポートが組み込まれていませんが、SQL_2003 に十分近いので機能します (外部キーの削除とスキーマの検出を除く)。

私はそれについてブログに投稿しましたが、基本的にはアダプターのリストに を追加し、SQL Server 用の非常に単純な新しいアダプターを作成することに要約されました (PostgreSQL アダプターをテンプレートとして使用します)。(Foreigner gemの修正)

于 2010-04-07T22:39:41.287 に答える
1

私はこれを適切に修正し、外国人の作者にプルリクエストを送りました。それまでの間、私のリポジトリのバージョンを使用できます: https://github.com/cjheath/foreigner

于 2012-09-07T07:02:55.410 に答える