I am creating a small news website, and someone suggested I look at the normalization, which I did, and although I understand this, I don’t quite understand if this applies to all the tables in the database. For example, I have this “Articles” table, consisting of:
ID - 10001
Featured - 0 or 1
Category - Category Name
Title - Title For The Article
Article - This is the article.....
Photo Description - Photo to go with blog 10001
Photo Name - John Smith
Photo Link - www.johnsmith.com
Author - myname@gmail.com
Keywords - keyword, keyword, keyword, ...
Added - 2014-07-27 10:41
Views - 600
Is there something wrong if you leave this table as it is, or should it be converted to the 3rd normal form?
EDIT:
What if I had:
**Authors**
ID
email
name
avatar
bio
website_link
facebook_link
twitter_link
**Articles**
ID - 10001
Featured - 0 or 1
Title - Title For The Article
Article - This is the article.....
Photo - 10001.jpg
Photo Description - Acts as alt tag
Photo Name - Crediting photographer
Photo Link - Link to credited photographer
Author - Author ID
Added - 2014-07-27 10:41
Views - 600
**categories**
ID
category
**article_categories**
ID
article_id
category_id
It’s still hard for me to understand the reasons why so many tables are such a wonderful thing, although now there are many joins to be made. Why isn’t it easier to use php to say
select * from articles where category == $category
or
select * from articles where featured == 0
or
select * from articles where author == $author_idetc. etc.