2012-02-07 29 views
1

我希望能夠找到:如何存儲博客類別SQL

  • 什麼是博客類
  • 哪些職位類別

表定義了什麼我已經寫此刻

CREATE TABLE blog_category_post (
    BlogID INT NOT NULL, 
    CategoryID INT NOT NULL, 
    PostID INT NOT NULL 
) 

我聽到的唯一索引中應該添加到許多一對多TA布萊爾,但我不知道如何在這種情況下添加他們,如果它甚至是正確的方法。

+0

「PostID」引用的表是否包含關於「post category」的信息? – 2012-02-07 18:49:24

+0

@WillP。它引用了一個「Post」表,其中包含PostID,UserID,PostEnteryDate,PostUpdateDate,PostTitle,PostContent,PostPublic,PostDeleted等發佈數據。 – Margus 2012-02-07 18:54:17

回答

1

對於規範化模式,您需要兩個表。

假設你有共同的分類博客和帖子(。一組相同的類別兩者即),這將是:

CREATE TABLE blog_category 
     (
     blogId INT NOT NULL REFERENCES blog (id), 
     categoryId INT NOT NULL REFERENCES category (id), 
     PRIMARY KEY (blogId, categoryId) 
     ) 


CREATE TABLE post_category 
     (
     postId INT NOT NULL REFERENCES post (id), 
     categoryId INT NOT NULL REFERENCES category (id), 
     PRIMARY KEY (postId, categoryId) 
     ) 

PRIMARY KEY約束隱式地創建一個聚集索引UNIQUE