我正在为一个网站创建一个CMS,其中包含新闻和新闻页面的不同主题。所以我为每个主题(体育,文学等)创建了一个表,只是为了拥有一个更清洁,更好的数据库组织(我想)。但是我最近了解了关系数据库,并发现用较少的表(只有2个表主题和内容)可以实现相同的任务,因此代码更少(很棒)。但我担心的是,由于这个网站可能有时间有数百甚至数千页,是否安全,干净,并且可以在一张桌子中放置这么多页面?知道有一天有人可以入侵该网站并删除该表,我会松开所有帖子。那么有没有更清洁,更安全的方法来完成这项任务,但仍然使用关系数据库的概念?
答案 0 :(得分:3)
简短回答:是的。正如JLo在上面的评论中所说,在设计数据库结构时,你不应该主要考虑安全性;主要考虑数据存储的效率(即规范化)。
如果黑客可以进入您的数据库,无论他们可以访问哪些表,这都是一个问题。因此,在安全性方面,首先要集中精力防止注入和数据库攻击。尝试将您的数据分成不同的表以保护其免受黑客攻击,就像将您的黄金存放在十个不同的银行金库中,以防止银行抢劫;它是security through obscurity,它在每一步都会对你不利。
相反,在安全性方面:
就标准化数据结构而言:
答案 1 :(得分:2)
由于这个网站可能会有数百甚至数千页,是否安全,干净,并且可以在一个表中拥有这么多页面?
只要您的索引正确,您就可以在数据库中存储数百万个页面。
知道有一天有人可以入侵网站并将其删除 表,我会松开所有帖子。
使用一个或几千个表在这里没有区别,如果您可以删除一个表,则可以将它们全部删除。