2011-12-29 14 views
3

私は同じMS SQL Expressインスタンス上の2つのデータベース間で "共有"したいという2つのテーブルを持っています。私は外来キーをデータベース間で作成することはできず、ビューで外部キーを使用することもできないため、テーブル内のデータを複製することに決めました - しかし、どうすればいいのか分かりません) ?トリガー(つまり、マスターテーブルを変更し、2番目のテーブルに変更が適用される)を使用するのが最善の方法(可能な場合)、またはアプリケーションレベルで行う必要がありますか?データベース間の外部キー、複写テーブル

+0

多くのデータがなければ、トリガーは機能し、おそらく最も理にかなっています。 – thinkdevcode

答えて

0

コメント内のコメント(今すぐコメントを受け付けることはできません):トリガーは機能し、多くのデータがない場合はおそらく最も理にかなっています。 -

1

同じサーバー内の別のデータベースでテーブルを呼び出すことができるはずです。

他のデータベースからのテーブルへのアドレス指定は、databasename.schema.tablenameとなります。

linked serversが設定されている場合は、サーバー間でこれを行うこともできます。命名方式はservername.databasename.schema.tablenameです。

+0

はい、でも、私はまだ外部キーの関係の代わりに制約を使用する必要がありますか? – trakos

+0

@trakos - 外部キー**制約**は、私が知る限り、サーバー/データベース間ではサポートされていません。あなたはビューを使ってそれを偽造することができるかもしれません。 – Oded

関連する問題