MS SQL-Serverデータベースに次の2つのテーブルがあります。
user_info
( user_id PRIMARY KEY,
email,
password
)
そして
messages
( time_stamp,
message,
sender,
recipients,
FOREIGN KEY(sender)
REFERENCES user_info (user_id),
FOREIGN KEY(recipients)
REFERENCES user_info (user_id)
)
messages
テーブルの受信者フィールドに複数のuser_id
値を格納できるかどうか疑問に思っています。私は初心者です。この問題の解決方法を教えてください。
これを行う最善の方法は、1対多の関係message_recipients
テーブル。
user_info
(
user_id INTEGER PRIMARY KEY,
email VARCHAR(256),
password VARCHAR(256)
);
messages
(
message_id INTEGER PRIMARY KEY
time_stamp DATETIME,
message VARCHAR(4000),
sender INTEGER -- references user_info.user_id
);
message_recipients
(
message_id INTEGER, -- references messages.message_id
recipient_id INTEGER -- references user_info.user_id
);