我想爲我的用戶創建一個文章數據庫我想知道我的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