PHP之六_MySQL数据库设计
在上一节中,我们学习了表单数据接收。
在接收了用户提交的注册信息后,接下来,应该将注册信息保存起来。
数据库是保存数据最好的地方。
在本节中,我们将介绍MySQL数据库。
一、MySQL数据库简介
MySQL是一款中小型的开源数据库产品,它原先是一家欧洲公司开发的,后来被Sun公司收购,而后Sun公司又被Oracle公司收购,因此MySQL现在属于Oracle公司。
在使用MySQL时,可以接受GPL协议,这时可以免费使用它。
我们使用的版本是集成在WAMP软件中的MySQL,版本号是5。
二、创建数据库
在这里,我们使用phpMyAdmin工具软件来管理MySQL数据库,它是PHP编写的网页界面的工具软件。
点击菜单上的第三项功能:“phpMyAdmin”,打开一个网页:
第一步是创建数据库。
我们先稍微提一下MySQL中的两个基本概念:数据库和表。
1. 数据库:一般而言,一个数据库可以保存一个应用程序的所有数据。例如你想编写一个学校的网站,这时可以创建一个数据库,命名为schooldb。如果你还想编写一个图书馆的网站,这时可以再创建一个数据库,命名为librarydb。总之,一个应用程序应单独创建一个数据库。
2. 表:一个数据库中可以有多个表。例如图书馆的数据库中,可以有图书表、读者表、借阅表等。每一个表都保存一组结构相同的数据。在设计表时,应指定表有几列,每列是什么类型的数据,例如是字符类型、数字类型还是日期类型,这一点用过EXCEL的就会比较明白。
3. 表的主键:每个表最好要指定一个主键。例如图书表,可以指定图书编号作为主键(每本书都会贴上一个图书编号,每本书的图书编号必须不同)。
主键的特点是每个记录的主键值都必须不同。
有可能重名的列不应该作为主键,例如学生表中的学生姓名不应该作为主键,因为可能会重名。
如果没有合适的列可以作为主键,可以在表中添加一个自动递增的数字列作为主键。
好了,回到创建数据库的界面来。在这个界面中,输入数据库名为testdb,整理一栏选择“utf8_general_ci”,再点击创建,即可创建数据库:
三、创建表
创建完数据库,可以开始创建表了,此时我们创建一个用户表,用于保存用户的注册信息。
用户表的名称为:TBL_USER,前面的TBL是TABLE(表)单词的缩写,用于标识它是一个表。
用户表有7列,除了界面上所需的5列(用户名、密码、邮箱、性别、爱好)外,我们增加了一个自动递增的主键列,还增加了一个注册时间列。
接下来,分别设计这7个列:
分别为7个列取名字,并且设置数据类型,常用的数据类型有INT(整数)、DECIMAL(浮点数)、VARCHAR(字符)、DATE(日期)。其中字符类型必须指定长度,指定长度时应多分配一些,例如用户名,你必须考虑到有的人可能叫“艾哈迈德·本·穆罕默德·本·穆拉德·本·赛利姆”。
选择“整理”为utf8_general_ci。
对于第一列user_id,往右边拉,还可以设置它是主键列,自动增长列:
设计完成后,向下拉,找到“保存”按钮,点击它就完成表的创建了。
在下一节课程中,我们将会写一些PHP代码,将表单传递过来的数据,保存到刚才设计好的TBL_USER表中。