答えて
はい。
あなたのローンテーブルはジャンクションテーブルのように見えるので、PKはDocumentID
とEmployeeID
の組み合わせである必要があります。
私は、同じ従業員が複数回ドキュメントを借りることができると思いますので、一意ではありません。日付フィールドが 'datetime'の場合は、それを一意にするために追加することができますが、' id'フィールドを使用することをお勧めします。 – BitAccesser
は、すべてのテーブルには主キーが必要なの:はい:いいえ
は、すべてのテーブルは主キーを持っているべきです。テーブルにプライマリキーは必要ない場合もありますが、まれにあり、一般的にはすべてのテーブルに1つのキーが必要です。これは、レコードを一意に識別し、主キーを持たないレコードを処理するのが難しくなるためです。
あなたの場合、ローンテーブルにはプライマリキーが必要です。 Andreがすでに彼の答えで言ったように、それはDocumentID
とEmployeeID
の組み合わせでなければなりません。
混乱を招く恐れがあります。DocumentID
+ EmployeeID
またはEmployeeID
+ DocumentID
のいずれかを使用してください。順序は違いを生むことができます。 DocumentID
+ EmployeeID
(その順番)の場合、データベースはDocumentID
に加えてEmployeeID
(問合せの順序は問わない)を検索する場合はプライマリ・キーを使用し、DocumentID
の検索の場合は検索時には使用しませんただEmployeeID
に。
- 1. すべてのテーブルにADO.NETを使用するプライマリキーが必要ですか?
- 2. このテーブルに新しいプライマリキーが必要ですか?
- 3. SQLiteでテーブルを作成するためにプライマリキーとオートインクリメントが必要ですか?
- 4. mysql dbのすべてのテーブルに同じエンコーディングが必要ですか?
- 5. テーブルが必要ですか?
- 6. すべてのテーブルのプライマリキーを他のテーブルの外部キーとして設定する必要がありますか?
- 7. データベース内のすべてのテーブルをプライマリキーで検索
- 8. すべての派生テーブルには独自のエイリアスが必要です。エラー?
- 9. すべてのクラスでJSHintグローバルにエントリが必要ですか?
- 10. ベクトルのすべてのオブジェクトにコピーコンストラクタが必要ですか?
- 11. angular2 RC4のすべてのコンポーネントにROUTER_DIRECTIVEが必要ですか?
- 12. TypeScriptのすべてのインポートに* .d.tsファイルが必要ですか?
- 13. プライマリキーをリセットする必要がありますか?
- 14. すべてのホバー状態にリンクが必要ですか?
- 15. すべてのIBOutletにプロパティが必要ですか?
- 16. すべてのbashスクリプトにシバンが必要ですか?
- 17. すべてのmesosマスターに設定ファイルが必要ですか?
- 18. すべてのモジュールファイルにPromise.promisifyAll()が必要ですか?
- 19. すべてのAWS Node.jsアプリケーションにクラスタモジュールが必要ですか?
- 20. プロトタイプのセルにはすべてクラスが必要ですか?
- 21. すべてのクラスにtoStringメソッドが必要ですか?
- 22. すべてのdb:migrateにファイルが必要ですか?
- 23. すべてのアクティビティにレイアウトが必要ですか?
- 24. NHibernate 3.2 - すべてのプロパティに "set"メソッドが必要ですか?
- 25. すべてのテーブルを正規化する必要がありますか?
- 26. Microsoft.AspNetCore.Mvc.Rendering.SelectListGroup 'でプライマリキーを定義する必要があります
- 27. Hibernate:Forignキーをプライマリキーにする必要があります
- 28. すべてのAndroid SDKが必要ですか、どのようにインストールする必要がありますか?
- 29. java.lang.IllegalStateException:私はテーブルからすべてのデータをフェッチする必要がCursorWindow
- 30. MySQLで「すべての派生テーブルには別のエイリアスが必要です」というエラーは何ですか?
どのように使用する予定ですか?なぜ聞くのですか? – doctorlove
「緊急」の場合は、1つのレコードにアクセスする方がよいでしょう。 – reporter