我正在设计一个包含消息和信使的数据库。
create table Message(
MessageID int,
MessengerID int,
Content nvarchar(max)
)
create table Messenger(
MessengerID int,
MessengerName nvarchar(100)
)
有时,信使是未知的。在这种情况下,您会使用 NULL 值,还是在 Messenger 表中为未知信使保留记录吗?我很想看到一个简短的解释为什么一种解决方案比另一种更好。
最佳答案
我会使用 NULL。
这正是 NULL 存在的目的。说“我不知道那是什么。”
在表中保留一条记录总是很痛苦。你现在必须对你的用户说,嘿,如果你愿意,你可以添加更多的信使,你可以删除它们,你甚至可以修改,但不要删除这一行,那一行。这会导致不必要的并发症。
关于database-design - 使用 NULL 外键或指向保留记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5168478/