第二篇 使用MySQL

第8章 设计Web数据库

现在,我们已经熟悉了PHP的基础知识,我们将在本章开始介绍如何将数据库集成到脚本中。在第2章中,我们介绍了使用关系数据库代替普通文件的优点。这些优点包括:

■关系数据库比普通文件的数据访问速度更快。

■关系数据库更容易查询并提取满足特定条件的数据。

■关系数据库具有专门的内置机制处理并发访问,因此作为程序员,不需要为此担心。

■关系数据库可以提供对数据的随机访问。

■关系数据库具有内置的权限系统。

对于一些更具体的例子来说,使用关系数据库能够更快速、更便捷地查询和回答客户是从什么地方来的、哪个产品卖得最好,或哪种类型的客户的消费能力最强。这些信息有助于改进站点,从而吸引更多的新客户并挽留老客户。但是,如果通过普通文件,这些特性的实现将会是特别困难的。

在本篇中,我们使用的数据库是MySQL。在开始下一章详细介绍MySQL之前,我们将讨论:

■关系数据库的概念和术语。

■Web数据库的设计。

■Web数据库的架构。

而本篇的其他章节将包括如下内容:

■第9章将介绍将MySQL数据库连接到Web所需的基本配置。我们将学习如何创建用户、数据库、表格和索引,以及MySQL的不同存储引擎。

■第10章将介绍如何在命令行下查询数据库,增加、删除或更新记录。

■第11章将介绍如何将PHP和MySQL数据库联系到一起,这样就可以通过Web界面使用和管理数据库。我们还将学习实现此操作的两种方法:使用PHP的MySQL库和使用PEAR:DB数据库抽象层。

■第12章,将详细介绍MySQL的管理,包括权限系统、安全和优化的细节。

■第13章,将详细介绍存储引擎,包括事务、全文搜索和存储过程。

8.1 关系数据库的概念

至今为止,关系数据库是最常用的数据库类型。在关系代数方面,它们具有很好的理论基础。当使用关系数据库的时候,并不需要了解关系理论(这是一件好事),但是还是需要理解一些关于数据库的基本概念。

8.1.1 表格

关系数据库由关系组成,这些关系通常称为表格。顾名思义,一个表格就是一个数据的表格。电子数据表就是一种表格。

下面,我们看一个例子。图8-1是一个示例表格。这个表格包括了Book-O-Rama书店客户的姓名与地址。

第二篇 使用MySQL - 图1

图 8-1 表中为Book-O-Rama书店的客户资料

该表具有一个名称(Customers),几个数据列,每一列对应于一种不同的数据;以及对应于一个客户的数据行。