23

私は現在、チームのプロジェクトのデータベース構造を設計しています。私は現在、まさにこの質問を念頭に置いています:外部キーを別のテーブルの主キーとして機能させることは可能ですか?

システムのデータベース設計のテーブルの一部を次に示します。

user_accounts
students
guidance_counselors

私が望んでいたuser_accountsのは、学生ユーザーと指導カウンセラー ユーザーの両方の ID (おそらくシステムへのログイン資格情報) とパスワードをテーブルに含めることです。studentsつまり、とテーブルの両方の主キーは、テーブルguidance_counselorsからの外部キーでもありuser_accountsます。しかし、それが許可されているかどうかはわかりません。

もう 1 つの質問は、student_recテーブルも存在し、そのレコードごとに(テーブル内の) と(テーブル内の)student_numberが必要であるということです。学生と指導カウンセラーの両方の ID が から取得された場合、どのようにテーブルを設計しますか? また、今後の参考のために、SQL コードとして手動で記述するにはどうすればよいでしょうか。user_iduser_accountsguidance_counsellor_iduser_iduser_accountsuser_accounts tablestudent_rec

これは私を悩ませており、私の質問に対する具体的または確実な答えが見つかりません。

4

2 に答える 2

5

はい、問題ないはずです。外部キーと主キーは互いに直交しています。列または列のセットがそのテーブルの主キー (一意である必要があります) であり、主キー/一意制約に関連付けられていても問題ありません。別のテーブルで。

于 2013-07-14T02:58:11.687 に答える