Oracleデータベースを使用してRoRプロジェクトを開発しています。最近、別のデータベースにDBLinkを追加しましたが、これはSQLからのみ完全に機能します。次のコードを使用してテーブルをクラスに追加する場合...
class ServerModel < ActiveRecord::Base
set_table_name "S985.S985_947_MODELS_VW@R985_A947.WORLD"
set_primary_key "model_barcode"
acts_as_reportable
acts_as_entity
end
...このエラーが発生します:
NativeException: java.sql.SQLException: ORA-02084: database name is missing a component
: select * from (SELECT "S985"."S985_947_MODELS_VW"@"R985_A947"."WORLD".* FROM "S985"."S985_947_MODELS_VW"@"R985_A947"."WORLD" ) where rownum <= 14
もちろん、この自動的に使用されるクエリは機能しません。dblink(@ R985_947.WORLD)の名前を複製せずに、選択するのではなく"S985"."S985_947_MODELS_VW"@"R985_A947"."WORLD".*
、単に選択する必要があります。"S985"."S985_947_MODELS_VW".*
これは、このset_table_name
方法または他のActiveRecord
方法で可能ですか?
答えは簡単に見えますが、解決策が見つかりません。誰かがこの問題で私を助けることができますか?
ありがとう!