我正在创建一个网站,用户可以在其中发布一些文字,最多只能附上一张照片,用户可以评论/喜欢
在我的数据库中创建表示这些实体/操作的表的最佳方法是什么
答案 0 :(得分:0)
我首先要查看现有的包,这些包可以处理您正在谈论的各种事情。如果由于某种原因无法修改现有包以满足您的目的,请查看代码和数据库设置以了解它们是如何进行的。
不要用一张白纸开始项目并进来说“嘿,我怎么做这个涉及复杂任务的大事?”
答案 1 :(得分:0)
对我来说,解决方案会涉及表之间的某些关系。
我首先要求我的代码尽可能地扩展,所以我会有一个线程表。
ThreadID ThreadData
-------------------------------
1 Favourite languages
2 Favourite Programmers
其次我有一些post表,与线程表有一个外键关系:
PostID PostData TimeStamp User ThreadID
--------------------------------------------------------------
1 C# ftw!! 07/04/2013 Chris 1
2 Adi Shamir 07/04/2013 Chris 2
了解如何以这种方式将所有帖子链接到主题。现在您无法确定用户是否会发布照片,因此我的帖子表中不会有photo
字段,因为您希望避免使用NULL值,因此您的表格已完全规范化。这意味着Photo
表,与Post
表具有外键关系。
PhotoID PhotoLocation PostID
------------------------------------------------
1 img/adishamir.jpg 2
然后您只需在加载帖子时加载照片。
最后对于喜欢,它与照片桌非常相似。 LikeID和喜欢的帖子。
然后由您编写以有意义的方式显示此数据的代码! :)