PHP MySQL 简介
通过 PHP,您可以连接和操作数据库。
MySQL 是跟 PHP 配套使用的最流行的开源数据库系统。
如果想学习更多 MySQL 知识可以查看本站 MySQL 教程。
MySQL 是什么?
· MySQL 是一种在 Web 上使用的数据库系统。
· MySQL 是一种在服务器上运行的数据库系统。
· MySQL 不管在小型还是大型应用程序中,都是理想的选择。
· MySQL 是非常快速,可靠,且易于使用的。
· MySQL 支持标准的 SQL。
· MySQL 在一些平台上编译。
· MySQL 是免费下载使用的。
· MySQL 是由 Oracle 公司开发、发布和支持的。
· MySQL 是以公司创始人 Monty Widenius's daughter: My 命名的。
数据库简单的理解就是:用来存储和管理数据的仓库
数据库按其设计原理可以分为关系型数据库和非关系型数据库两种:
• 当前课程,我们主要着重介绍关系型数据库MySQL
• 最后的课程,会来学习非关系型数据库MongoDB
关系型数据库:
我们学习过二维数组,我们打印联赛积分表实际上就是将一个二维数组的数据进行输出,实际上,二维数组是存储数据最直观的方式
• 每个值都有对应的键,存取简单
• 可以有任意多行数据,可以保存大量数据
关系型数据在设计上正是采用了二维数组的概念。因此,所谓关系,实际上就是一张二维表,而关系型数据库就是一组二维表组成的数据仓库
我们常见的:MySQL、Oracle、SQLServer、Sqlite等都是关系型数据库软件
基本术语
关系型数据库中我们有下面一些术语:
• 数据表:每张二维表就是一个数据表,它代表了一个关系,所以必须有一个关系名,我们称为表名
• 记录:二维表中的一行称为记录
• 字段:二维表中的一列称为字段
数据库:一组数据表的集合
区分数据库和数据库软件
我们通常管Oracle或者MySQL叫数据库,实际上全称应该是数据库管理软件,而数据表的集合才叫数据库
因此一个数据库管理软件中,可以管理多个数据库,每个数据库中可以有多个数据表,每个数据表里可以设置多个字段
MySQL 中的数据存储在表中。表格是一个相关数据的集合,它包含了列和行。
在分类存储信息时,数据库非常有用。一个公司的数据库可能拥有以下表:
· Employees
· Products
· Customers
· Orders
数据库在服务器上的角色
PHP + MySQL
· PHP 与 MySQL 结合是跨平台的。(您可以在 Windows 上开发,在 Unix 平台上应用。)
查询
查询是一种询问或请求。
通过 MySQL,我们可以向数据库查询具体的信息,并得到返回的记录集。
请看下面的查询(使用标准 SQL):
mysql> set names utf8; mysql> SELECT name FROM websites; +---------------+ | name | +---------------+ | Google | | 淘宝 | | PHP中文网 | | 微博 | | Facebook | | stackoverflow | +---------------+
6 rows in set (0.00 sec)
语句 set names utf8;用于设定数据库编码,让中文可以正常显示。
上面的查询选取了 "websites" 表中 "name" 列的所有数据。
如需学习更多关于 SQL 的知识,请访问我们的 SQL 教程。
下载 MySQL 数据库
如果您的 PHP 服务器没有 MySQL 数据库,可以在此免费下载 MySQL: http://www.mysql.com。
使用MySQL
在大家的WAMP中已经安装好了MySQL数据库,可以直接使用,MySQL的默认端口是3306,WAMP默认的用户名是root,密码是空。
WAMP还默认自带了一个叫做phpmyadmin的软件,通过它我们可以管理和操作数据库。
虽然通过phpmyadmin可以完成绝大多数的数据库操作,但是,一个合格的PHP必须起码知道一些基本的数据库命令行操作
打开WAMP菜单可以进入MySQL控制台
登录MySQL
使用MySQL控制台只需要直接输入密码(默认密码为空,直接回车即可)就可以登录
实际情况下,登录MySQL,需要在命令行里执行下面的命令
dos进行D:\wamp\bin\mysql\mysql5.6.17\bin
mysql –h hostname –u username –p
-h h是host的缩写,表示当前数据库所在的服务器地址,可以域名也可以是IP
-u u是username的缩写,表示用户名
-p 表示密码
执行过上面命令后,会要求输入用户的密码,空则可以直接回车,或者不添加-p参数
内置数据库
新安装的MySQL中已经存在了4个数据库
show databases;
• information_schema 保存数据库中所有的库名、表名信息
• performance_schema 收集数据库的各种性能参数
• mysql 管理数据库的用户帐号等信息
• test 提供给开发人员测试用的空库
就像我们Windows的系统文件一样,这4个库,除了test外,一个都不能删
关于 MySQL 数据库的事实
关于 MySQL 的一点很棒的特性是,可以对它进行缩减,来支持嵌入的数据库应用程序。也许正因为如此,许多人认为 MySQL 仅仅能处理中小型的系统。
事实上,对于那些支持巨大数据和访问量的网站(比如 Friendster、Yahoo、Google),MySQL 是事实上的标准数据库。
这个地址提供了使用 MySQL 的公司的概览: http://www.mysql.com/customers/。