だから、私はそうのように作成されたテーブルを持っていますか?かなり簡単な質問のように思えますが、それは可能かどうかですか?あなたの人の助けてくれてありがとう!外部キーの参照技術キー
1
A
答えて
1
はい - 完全に簡単です。完全な複合インデックスを指定するだけで済みます。あなたの他の表には、ここにPKを構成するこれらの4つの列を持っている必要があり、その後、FK制約は次のようになります。
ALTER TABLE dbo.YourOtherTable
ADD CONSTRAINT FK_YourOtherTable_CharacterSavingThrow
FOREIGN KEY(CharacterCode, FortitudeSaveCode, ReflexSaveCode, WilSaveCode)
REFERENCES dbo.CharacterSavingThrow(CharacterCode, FortitudeSaveCode, ReflexSaveCode, WilSaveCode)
ポイントは次のとおりです。あなたが持っている場合複合主キー(以上で構成されましたその表を参照したい他の表もすべての列を持ち、それらの列をすべてFK関係に使用する必要があります。
また、これらの2つのテーブルを結合するクエリを作成する場合は、化合物PKに含まれるすべてのカラムをにする必要があります。
これは、PKとして4つの列を使用する際の主な欠点の1つです。FK関係やJOINクエリが非常に扱いにくくなり、書き込みや使用に迷惑をかけます。そのため、そのような場合は、別の代理キーをテーブルに使用することを選択します。あなたのdbo.CharacterSavingThrow
テーブルに新しいINT IDENTITY
を導入してプライマリキーとして機能させると、はそのテーブルを参照し、そのテーブルを使用するJOINクエリを書くのがずっと簡単になります。
関連する問題
- 1. 自己参照外部キー
- 2. 2つの列の外部キー参照
- 3. 同じ列の外部キーの参照
- 4. MySQLの外部キーの参照
- 5. マングース - 外部キー参照の設定プレゼンテーション
- 6. API SQL外部キー参照の検証
- 7. 外部キー参照無効な列エラー
- 8. sqlite、外部キー参照をカウントする
- 9. 外部キーで参照テーブルを取得
- 10. Hibernateコード生成外部キー参照オブジェクト
- 11. MySQLクエリプライマリキーを参照する外部キー
- 12. 外部キー循環参照ジレンマ
- 13. 外部キー参照、無効なテーブル
- 14. Linqが参照する外部キー参照データ
- 15. 外部キーを照会
- 16. 2つの列を含む主キーを持つ表への外部キー参照
- 17. POSTGRESQL外部キー2つの異なるテーブルの主キーを参照する
- 18. Azure Mobile App:自己参照外部キーからのid列の参照方法
- 19. 外部キーを解決するための循環参照と循環参照
- 20. テーブル上のすべての外部キー参照の選択
- 21. SQLの外部キーと他のテーブルの参照
- 22. 別のテーブルの複数の行を参照する外部キー
- 23. 円の外部キー参照の挿入MySQLとトランザクションのロールバック
- 24. Djangoモデルの複数の外部キーの参照
- 25. プライマリ/外部キーの追加と他のテーブルの参照
- 26. Oracleのすべての外部キー参照
- 27. Djangoビューのクエリと外部キーの参照
- 28. 複数のテーブルを参照するデータベースの外部キー
- 29. テーブル内の外部キーを参照するときのエラー
- 30. SQL71501外部キー:オブジェクト・エラーへの未解決の参照
ハハ、申し分なく。どうもありがとう!私はおそらくサロゲートキーを使用すると思います...私のSQL教師はそれに合っているでしょう! = D – Jack