数据库设计 – 与Facebook相似的通知系统的数据库模式

前端之家收集整理的这篇文章主要介绍了数据库设计 – 与Facebook相似的通知系统的数据库模式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在设计一个类似于Facebook的通知系统,我已经到了一个砖墙.我的要求是能够支持无限数量的可能具有不同类型的元数据需要呈现的通知类型.

我以为我会设计模式如下:

**Notification**
Id (int)
TypeId (int)
RecipientId (int)
SenderId (int)
SendDateTime (DateTime)
Read (bool)
MessageData (...Blob?)
Deleted (bool)

**NotificationType**
Id
Name
Description

我真的想尝试避免在我的数据库中存储HTML字符串,但是,我也不是特别喜欢存储blob.

可能我可以查看NotificationType表,并引用另一个存储特定于该类型的数据的表,但这意味着每次创建新的通知类型时,我都需要创建一个新的表.我相信我也会把自己变成一个必须编写动态sql获取数据的世界.

有人对我有任何建议吗?

解决方法

这是我最终如何解决这个问题.

我决定使用字典存储每种通知类型唯一的数据.然后我将该字典对象序列化为二进制字符串,并将其存储在数据库中以及每个通知.我有一个分配给每个通知类型的模板,包含占位符即. ‘{song-title}’,我可以快速替换我的字典对象中的值.

原文链接:https://www.f2er.com/mssql/82434.html

猜你在找的MsSQL相关文章