我想为我的用户创建一个文章数据库我想知道我的MySQL数据库结构应该如何?MySQL文章数据库结构?
以下是我的数据库表结构到目前为止的样子。
CREATE TABLE users_articles (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
user_id INT UNSIGNED NOT NULL,
PRIMARY KEY (id)
);
我想为我的用户创建一个文章数据库我想知道我的MySQL数据库结构应该如何?MySQL文章数据库结构?
以下是我的数据库表结构到目前为止的样子。
CREATE TABLE users_articles (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
user_id INT UNSIGNED NOT NULL,
PRIMARY KEY (id)
);
想必您将您的文章与用户分开存储(以满足3NF)。为此,我喜欢的东西开始:
Users:
UserId int primary key.
Other user-specific data (name, address, affiliations, ...).
Articles:
ArticleId int primary key.
UserId references Users(UserId).
ArticleText varchar(big-enough-to-hold-article).
的主键的数据类型是在你的手中(不影响3NF方面)。
是否希望将文章文本分割为段落或将关键字添加到文章等等是从中扩展而来的。这是你应该从哪里开始。
这些是我想要超越上面给出的基本结构立即想到的事情。
Articles(ArticleId)
,序号用于订购文章。这是OP可以开始的一个很好的答案。 – 2009-11-14 08:40:14
答案真的取决于整个应用程序的规格,而不仅仅是文章列表。
看问题中的创建语句,它看起来可能是一个连接表,许多用户有许多文章(多对多)。在这种情况下,您可能只想使用user_id和article_id,并将它们作为主键,但那么用户和文章表在哪里以及您希望在这些表中存储哪些信息?
这篇文章在Database Normalization可能会帮助你进一步。
使用MySql的support for full-text indexing and searching 可以搜索文章的文本但了解使用这些索引的权衡不一定是初学者的话题。
您的要求描述比较模糊,请进一步详细说明。 – 2009-11-14 08:33:10
我们不知道您的需求,我们如何帮助设计结构? – 2009-11-14 08:33:29
我只是想知道你会怎么想会使文章数据库结构与文章一起更好。我猜? – articles 2009-11-14 08:40:01