PHP+MySQL教程(1):MYSQL简介
WebjxCom提示:MySQL 是一种数据库。数据库定义了存储信息的结构。
MySQL 是最流行的开源数据库服务器。
什么是 MySQL?
MySQL 是一种数据库。数据库定义了存储信息的结构。
在数据库中,存在着一些表。类似 HTML 表格,数据库表含有行、列以及单元。
在分类存储信息时,数据库非常有用。一个公司的数据库可能拥有这些表:"Employees", "Products", "Customers" 以及 "Orders"。
数据库表
数据库通常包含一个或多个表。每个表都一个名称(比如 "Customers" 或 "Orders")。每个表包含带有数据的记录(行)。
下面是一个名为 "Persons" 的表的例子:
LastName
FirstName
Address
City
Hansen
Ola
Timoteivn 10
Sandnes
Svendson
Tove
Borgvn 23
Sandnes
Pettersen
Kari
Storgt 20
Stavanger
上面的表含有三个记录(每个记录是一个人)和四个列(LastName, FirstName, Address 以及 City)。
查询
查询是一种询问或请求。
通过 MySQL,我们可以向数据库查询具体的信息,并得到返回的记录集。
请看下面的查询:
SELECT LastName FROM Persons
上面的查询选取了 Persons 表中 LastName 列的所有数据,并返回类似这样的记录集:
php调用mysql数据库
LastName
Hansen
Svendson
Pettersen
下载 MySQL 数据库
如果您的 PHP 服务器没有 MySQL 数据库,可以在此下载 MySQL:sql/downloads/index.html
Facts About MySQL Database
关于 MySQL 的一点很棒的特性是,可以对它进行缩减,来支持嵌入的数据库应用程序。也许正因如此,许多人认为 MySQL 仅仅能处理中小型的系统。
事实上,对于那些支持巨大数据和访问量的网站,MySQL 是事实上的标准数据库(比如 Friendster, Yahoo, Google)。这个地址提供了使用 MySQL 的公司的概览:sql/customers/
PHP+MySQL教程(2):连接MYSQL数据库
WebjxCom提示:免费的 MySQL 数据库通常是通过 PHP 来使用的。在您能够访问并处理数据库中的数据之前,您必须创建到达数据库的连接。
免费的 MySQL 数据库通常是通过 PHP 来使用的。
连接到一个 MySQL 数据库
在您能够访问并处理数据库中的数据之前,您必须创建到达数据库的连接。
在 PHP 中,这个任务通过 mysql_connect() 函数完成。
语法
mysql_connect(servername,username,password);
参数
描述
servername
可选。规定要连接的服务器。默认是 "localhost:3306"。
username
可选。规定登录所使用的用户名。默认值是拥有服务器进程的用户的名称。
password
可选。规定登录所用的密码。默认是 ""。
注释:虽然还存在其他的参数,但上面列出了最重要的参数。
例子
在下面的例子中,我们在一个变量中 ($con) 存放了在脚本中供稍后使用的连接。如果连接失败,将执行 "die" 部分:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
die('Could not connect: ' . mysql_error());
  }
// some code
?>
关闭连接
脚本一结束,就会关闭连接。如需提前关闭连接,请使用 mysql_close() 函数。
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
die('Could not connect: ' . mysql_error());
  }
// some code
mysql_close($con);
?>
PHP+MySQL教程(3):创建数据库和表
WebjxCom提示:数据库存有一个或多个表。CREATE DATABASE 语句用于在 MySQL 中创建数据库。
数据库存有一个或多个表。
创建数据库
CREATE DATABASE 语句用于在 MySQL 中创建数据库。
语法
CREATE DATABASE database_name
为了让 PHP 执行上面的语句,我们必须使用 mysql_query() 函数。此函数用于向 MySQL 连接发送查询或命令。
例子
在下面的例子中,我们创建了一个名为 "my_db" 的数据库:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
die('Could not connect: ' . mysql_error());
  }
if (mysql_query("CREATE DATABASE my_db",$con))
  {
echo "Database created";
  }
else
  {
echo "Error creating database: " . mysql_error();
  }
mysql_close($con);
?>
创建表
CREATE TABLE 用于在 MySQL 中创建数据库表。
语法
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
.......
)
为了执行此命令,我必须向 mysql_query() 函数添加 CREATE TABLE 语句。
例子
下面的例子展示了如何创建一个名为 "person" 的表,此表有三列。列名是 "FirstName", "LastName" 以及 "Age":
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
die('Could not connect: ' . mysql_error());
  }
// Create database
if (mysql_query("CREATE DATABASE my_db",$con))
  {
echo "Database created";
  }
else
  {
echo "Error creating database: " . mysql_error();
  }
// Create table in my_db database
mysql_select_db("my_db", $con);
$sql = "CREATE TABLE person 
(
FirstNamevarchar(15),
LastNamevarchar(15),
Age int
)";
mysql_query($sql,$con);
mysql_close($con);
?>
重要事项:在创建表之前,必须首先选择数据库。通过 mysql_select_db() 函数选取数据库。
注释:当您创建 varchar 类型的数据库字段时,必须规定该字段的最大长度,例如:varchar(15)。
MySQL 数据类型
下面的可使用的各种 MySQL 数据类型:
数值类型
描述
int(size)
smallint(size)
tinyint(size)
mediumint(size)
bigint(size)
仅支持整数。在 size 参数中规定数字的最大值。
decimal(size,d)
double(size,d)
float(size,d)
支持带有小数的数字。
在 size 参数中规定数字的最大值。在 d 参数中规定小数点右侧的数字的最大值。
文本数据类型
描述
char(size)
支持固定长度的字符串。(可包含字母、数字以及特殊符号)。
在 size 参数中规定固定长度。
varchar(size)
支持可变长度的字符串。(可包含字母、数字以及特殊符号)。
在 size 参数中规定最大长度。
tinytext
支持可变长度的字符串,最大长度是 255 个字符。
text
blob
支持可变长度的字符串,最大长度是 65535 个字符。
mediumtext
mediumblob
支持可变长度的字符串,最大长度是 16777215 个字符。
longtext
longblob
支持可变长度的字符串,最大长度是 4294967295 个字符。
日期数据类型
描述
date(yyyy-mm-dd)
datetime(yyyy-mm-ddhh:mm:ss)
timestamp(yyyymmddhhmmss)
time(hh:mm:ss)
支持日期或时间
杂项数据类型
描述
enum(value1,value2,ect)
ENUM 是 ENUMERATED 列表的缩写。可以在括号中存放最多 65535 个值。
set
SET 与 ENUM 相似。但是,SET 可拥有最多 64 个列表项目,并可存放不止一个 choice
主键和自动递增字段
每个表都应有一个主键字段。
主键用于对表中的行进行唯一标识。每个主键值在表中必须是唯一的。此外,主键字段不能为空,这是由于数据库引擎需要一个值来对记录进行定位。
主键字段永远要被编入索引。这条规则没有例外。你必须对主键字段进行索引,这样数据库引擎才能快速定位给予该键值的行。
下面的例子把 personID 字段设置为主键字段。主键字段通常是 ID 号,且通常使用 AUTO_INCREMENT 设置。AUTO_INCREMENT 会在新纪录被添加时逐一增加该字段的值。要确保主键字段不为空,我们必须向该字段添加 NOT NULL 设置。
例子
$sql = "CREATE TABLE person