最详细的PHP操作MYSQL数据库入门教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

最详细的PHP操作MYSQL数据库入门教程

作者:聂庆鹏

(本资料仅供个人学习参考之用,请勿用作其他用途)PHP是一门Web编程语言,而MySQL是一款网络数据库系统。这二者是目前Web开发中最黄金的组合之一。那么PHP是如何操作MySQL数据库的呢?从根本上来说,PHP 是通过预先写好的一些列函数来与MySQL数据库进行通信,向数据库发送指令、接收返回数据等都是通过函数来完成。图9-1给出了一个普通PHP程序与MySQL进行通信的基本原理示意图。

图9-1 PHP程序与MySQL数据库通信原理示意图

上图展示了PHP程序连接到MySQL数据库服务器的原理。可以看出,PHP通过调用自身的专门用来处理MySQL数据库连接的函数,来实现与MySQL通信。而且,PHP并不是直接操作数据库中的数据,而是把要执行的操作以SQL语句的形式发送给MySQL服务器,由MySQL服务器执行这些指令,并将结果返回给PHP程序。MySQL数据库服务器可以比作一个数据“管家”。其他程序需要这些数据时,只需要向“管家”提出请求,“管家”就会根据要求进行相关的操作或返回相应的数据。

明白了PHP操作MySQL的流程,我们就很容易掌握PHP操作MySQL的相关函数。因为以上几乎每一个步骤,都有相应的函数与之对应。开发PHP数据库程序时,只需要按照流程调用相关函数,数据库操作便可轻松实现。

·PHP操作MySQL常用函数

PHP开发者为我们提供了大量函数,使我们可以方便的使用PHP连接到MySQL数据库,并对数据进行操作。学习PHP+MYSQL数据库编程,首先要了解这些函数,明确具体的步骤,然后才能进入实质性开发阶段。

PHP中可以用来操作MYSQL数据库的函数见表9-1:

这些函数中,最常用的有mysql_connect()、mysql_select_db()、mysql_query()、mysql_fetch_array()、mysql_num_rows()、mysql_close()等。下面我们就着重介绍这几个函数的使用。

表9-1 PHP的MYSQL函数一览

·PHP对MySQL数据库的操纵

1、mysql_connect()函数

要在PHP中操作MySQL中的数据,第一步就是连接到数据库服务器。也就是建立一条PHP程序到MySQL数据库之间的通道。这样PHP才能通过这个通道来向MySQL服务器发送各种指令,并取得指令执行的结果,将这些结果应用于PHP程序中。mysql_connect()函数就是用来建立和MySQL数据库的连接。

mysql_connect()函数有5个参数,但是通常情况下我们只用到前三个参数。格式如下:resource mysql_connect ( string server, string username , string password)

该函数返回类型为resource型,即资源型。三个参数分别为MySQL服务器地址、MySQL 用户名、密码。这里的用户名可以用超级管理员的,也可以用用户表中存在的其他用户。如下面的语句将用超级管理员身份建立一个到本地服务器的连接:

$id=mysql_connect(“localhost”,”root”,”1234”);

其中“localhost”换成“127.0.0.1”或本地机器的实际IP地址,效果都是相同的。另外服务器地址后面可以指定MySQL服务的端口号,如果是采用默认的3306端口,则不必指定。如果采用了其他端口,则需要指定,如“127.0.0.1:88”表示MySQL服务于本地机器的88端口。用户名和密码均需指定(如密码为空,则直接用两个引号即可)。

将以上代码写在一个PHP程序中,写法如下:

$id=mysql_connect(“localhost”,”root”,”1234”);

echo $id;

?>

此程序运行之后,如果执行成功,则会输出一个资源型变量$id的编号,类似于“Resource id #2”。如果执行失败,则有多种可能。如果出现下列提示:

Fatal error: Call to undefined function mysql_connect in [……]

则说明本地服务器的MySQL扩展库尚未被载入,因此PHP解释器无法识别MySQL函数。请参照本章第一节的内容进行重新设置。

如果出现下列提示:

Warning: mysql_connect() [function.mysql-connect]: Unknown MySQL server host […] 则说明MySQL服务器地址错误,可能是输入有错误,或者服务器没有启动,或者段口号不对。这时可以检查函数的第一个参数是否提供正确,MySQL是否已成功启动。

还有可能出现下列提示:

Warning: mysql_connect() [function.mysql-connect]: Access denied for user […]

这说明用户名或密码有错误。或者本帐号没有在本MySQL服务器上登陆的权限。

我们这里之所以如此详细地讲解该函数,就是因为这时连接到MySQL数据库的第一步。只要这一步成功了,那么下面的所有函数便都能运行。连接到数据库是一切工作的起点。因此必须保证此步骤成功,才能继续下面的内容。

2、mysql_select_db()函数

连接到数据库以后,我们还不能直接操作某个表,因为表都存储在各个数据库当中,需要首先选择要操作的数据库,才能对这个数据库下面的表进行操作。mysql_select_db()函数就是用来指定要操作的数据库。前面的例子中我们曾在MySQL中创建了一个student数

据库,下面的代码将连接到数据库服务器,并把student数据库作为当前要操作的数据库。

1:

2: $id=mysql_connect(“localhost”,”root”,”1234”);

3: $ok=mysql_select_db(“student”,$id);

4: if($ok){

5: echo "OK,选择数据库成功!";

6: }else{

7: echo "OH,选择数据库失败,请确认数据库是否存在。";

8: }

9: ?>

本程序中第1行我们建立了一个到本地MySQL数据库服务器的连接。第2行用mysql_select_db()函数来指定要操作的数据库。函数第一个参数为数据库的名字,第二个参数为应用于哪个连接。第二个参数可以省略,省略时默认使用当前连接。一般来说,此参数可以直接省略。

mysql_select_db()函数返回一个布尔型值。如果执行成功返回true,失败则返回false。函数没有任何错误信息提示。因此即使你提供的数据库名有错误或数据库不存在,本函数也不会报错。因此,我们将返回结果存放在$ok中,通过判断$ok的值来判断是否执行成功。

3、mysql_query()函数

连接到数据库服务器,并选择了要操作的数据库之后,下一步就是向服务器发送操作指令,也就是SQL语句。这需要大家对MYSQL和SQL语句有一点基本了解。现在我们来看一个例子,用PHP程序在MySQL中创建一个数据库newdata,并在这个数据库中创建一个表testtable,表的字段可以随意设置几个。

1:

2:

3: 用PHP创建新数据库和表

4:

5:

6:

7: $id=mysql_connect("localhost","root","1234");

8: mysql_query("CREATE DA TABASE newdata",$id);

9: mysql_select_db("newdata",$id);

10: mysql_query("CREATE TABLE testtable(name varchar(10),age int(4))",$id);

11: mysql_close($id)

12: ?>

13:

14:

本程序执行完毕后不会有任何输出。但是如果进入MySQL控制台,查看数据库,就会发现已经成功创建了一个名为newdata的数据库。打开此数据库,可以看到数据库中有一个testtable表。程序执行成功。

通过程序可以看出mysql_query()函数的使用十分简单,只需要将一条SQL语句作为参数传递过去,即可执行此SQL语句。第二个参数$id在一般情况下同样可以省略。

使用mysql_query()函数可以向数据库服务器发送任何合法的SQL指令(前提是数据库

相关文档
最新文档