我们看看高手是如何设计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.
如果你善于研究,赞同可以弄懂了。知道高手和新手的区别在什么地方吗?