我們看看高手是如何設計mysql數據庫的
摘要:我們看看高手是如何設計mysql數據庫的,高手設計的友情鏈接mysql表,往往有時候我們自己很迷茫不知道如何設計mysql數據庫,那么我們可以看看高手是如何設計mysql數據庫表結構的,我們舉例為友情鏈接數據庫表,希望對大家有所幫助。
mysql數據庫是現在非常流行的數據庫存儲選擇,我相信使用php的大部分人員都會選擇mysql數據庫,而自從oracle收購mysql之后,mysql的未來更是一片光明。
但是一個新手和一個高手設計的mysql數據庫表結構是非常有區別的,那么有什么具體區別?讓我們來看下高手是如何設計mysql數據庫表結構的,我會一一分析。
下面看一個友情鏈接的mysql數據庫設計表結構代碼:
CREATE TABLE `friendlink` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`paixu` tinyint(3) unsigned NOT NULL DEFAULT '0',
`title` varchar(80) NOT NULL,
`url` varchar(255) NOT NULL,
`isclosed` tinyint(1) unsigned NOT NULL DEFAULT '0',
`beizhu` varchar(100) NOT NULL DEFAULT ''
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
首選,創建id字段為自動增長,因為友情鏈接的數量問題,一般不會超過3位數字,所以我們直接建議使用tinyint來存儲,這樣更能節省數據庫資源;
使用了paixu字段,用來排序友情鏈接的順序,當然也同樣使用了tinyint字段;
title是varchar類型,為什么沒用char類型?因為varchar可以自動增長,主要原因是因為標題不是固定長度;
和title字段一樣,url地址也使用了varchar;
isclosed的意思是記錄是否關閉了友情鏈接,使用tinyint字段
其他的就不多說了,主要我想說的是:
凡是整形的,合理情況下都使用了unsigned NOT NULL DEFAULT '0',那么這句話是什么意思呢?unsigned是非負整形,NOT NULL不為空,DEFAULT '0',默認為0.
如果你善于研究,肯定可以弄懂了。知道高手和新手的區別在什么地方嗎?