0

0

边记边学PHP-(十六)PHP使用MySQL扩展库操作数据库

php中文网

php中文网

发布时间:2016-06-23 13:43:00

|

921人浏览过

|

来源于php中文网

原创

php提供了很多扩展库,这里说的是使用mysql扩展库,但是这种扩展库在不久的将来就会被摒弃,因为如果使用mysql扩展库编写的代码在运行的时候会有warning的提示。我本来想直接写另一种,但是感觉这是基础。mysql扩展库,一说到库,自然而然就想到是一堆函数,很多函数组成一个库,使用扩展库也就是使用里面的函数。mysql扩展库是完全面向过程的,显然不符合面向对象的特性,被摒弃也是可以理解的。废话不多说,直接上重点。

PHP高级开发技巧与范例
PHP高级开发技巧与范例

PHP是一种功能强大的网络程序设计语言,而且易学易用,移植性和可扩展性也都非常优秀,本书将为读者详细介绍PHP编程。 全书分为预备篇、开始篇和加速篇三大部分,共9章。预备篇主要介绍一些学习PHP语言的预备知识以及PHP运行平台的架设;开始篇则较为详细地向读者介绍PKP语言的基本语法和常用函数,以及用PHP如何对MySQL数据库进行操作;加速篇则通过对典型实例的介绍来使读者全面掌握PHP。 本书

下载
一、PHP使用MySQL扩展库操作数据库的示意图

此图是我自己画的,可能有不准确的地方。

可以看到使用MySQL操作数据库大致经过五步:

1、连接MySQL服务器

这里使用的函数是mysql_connect()函数

2、选择数据库

这里使用的是mysql_select_db();函数

3、执行SQL语句

这里使用mysql_query()函数。所谓的SQL语句就是增删改查操作。

4、关闭结果集

这里使用mysql_free_result();函数,释放系统资源

5、断开与服务器的连接

这里使用mysql_close();函数

二、细说五步

1、连接MySQL服务器

mysql_connect()函数的语法如下:

resource mysql_connect([string server[,string username[,string password[,bool new_link[,int client_flags]]]]]);

这是最完整的函数参数,但是我们在用的时候就只是用前三个参数就好了。

第一个server指的是MySQL服务器,可以使用默认的localhost。

第二个username就是在安装数据库的时候自己设定的用户名,我们默认的是root。

第三个password就是数据库的密码。

如果连接成功会返回一个MySQL连接标识,失败则返回false。

比如我连接我自己的数据库,我的服务器为localhost,用户名为root,密码为root。我可以这么测试

   

2、选择数据库

bool mysql_select_db(string database_name[,resource link_identifier]);

第一个参数database_name是要连接的数据库名。

第二个参数link_identifier是数据库连接标识,也就是上面连接MySQL服务器成功后返回的值。如果不写,默认为上一次打开的数据库连接。建议写。

成功返回true,失败返回false。

比如我需要连接我上次创建的那个test数据库,我可以这么写:

   


3、执行SQL语句

所谓SQL语句就是对数据库进行的增删改查操作。在使用命令行操作数据库的时候已经介绍了。函数语法如下:

resource mysql_query(string query[,resource link_identifier]);

第一个参数就是需要执行的sql语句。

第二个参数是mysql_connect返回的连接标识。建议写。

sql语句分为ddl【数据定义语句】 ,dml【 数据操作语句,如update,insert,delete】,dql【 select】 ,dtl【数据事务语句 rollback commit】,这里面最常用的就是dql语句,也就是查询语句。在执行dql语句成功后返回的是一个“数据指针”,在执行dml语句成功后返回的是true,失败都返回false。

比如我想查询现在我的表里有什么数据,我可以这么写。

';	}

增删改不举例了,就是把SQL语句换了。然后返回的true或false。不用再取结果集。

4、关闭结果集

mysql_free_result(resource $res);

比如上面我用完之后就可以关闭结果集了,mysql_free_result($query);

5、断开与数据库连接

mysql_close(resource $link_identifier);

比如上面程序最后我就可以断开连接了,mysql_close($conn);

三、这里给出综合案例

";          //echo "$row[0]--$row[1]--$row[2]--$row[3]--$row[4]";          //var_dump($row);          //第二种取法          foreach($row as $key=>$value){               echo "$value--";          }              }     //6.释放资源     mysql_free_result($res);     mysql_close($conn);  //这句可以不写,建议写

四、细节问题

       1.使用完$res结果集后,一定要释放资源
       2.mysql_close()如果没有的话,系统也会自动关闭
       3.如果mysql_close放在了while前面,那么不会影响结果,因为执行完mysql_query语句之后,程序已经把数据库读到内存,再次使用时是从内存读取。但是如果mysql_free_result放在前面,那么就会出错。
       4.$row是个数组
       5.$res如果执行的是dql语句返回的是个资源类型,但是如果执行的是dml语句就会返回bool值

       6.从$res获取行数据的时候,除了mysql_fetch_row($res)[返回索引数组]还有三个方法:

                mysql_fetch_assoc($res)          --------返回一个关联数组

                mysql_fetch_array($res)          ---------返回索引数组和关联数组,很耗内存,建议不要使用

                mysql_fetch_object($res)        ---------把一行数据当成一个对象返回



至此使用MySQL扩展库操作数据库基本完成,这是后面使用Mysqli扩展库操作数据库的基础,下一篇写Mysqli扩展库操作数据库。













相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
html编辑相关教程合集
html编辑相关教程合集

本专题整合了html编辑相关教程合集,阅读专题下面的文章了解更多详细内容。

37

2026.01.21

三角洲入口地址合集
三角洲入口地址合集

本专题整合了三角洲入口地址合集,阅读专题下面的文章了解更多详细内容。

17

2026.01.21

AO3中文版入口地址大全
AO3中文版入口地址大全

本专题整合了AO3中文版入口地址大全,阅读专题下面的的文章了解更多详细内容。

227

2026.01.21

妖精漫画入口地址合集
妖精漫画入口地址合集

本专题整合了妖精漫画入口地址合集,阅读专题下面的文章了解更多详细内容。

59

2026.01.21

java版本选择建议
java版本选择建议

本专题整合了java版本相关合集,阅读专题下面的文章了解更多详细内容。

3

2026.01.21

Java编译相关教程合集
Java编译相关教程合集

本专题整合了Java编译相关教程,阅读专题下面的文章了解更多详细内容。

14

2026.01.21

C++多线程相关合集
C++多线程相关合集

本专题整合了C++多线程相关教程,阅读专题下面的的文章了解更多详细内容。

6

2026.01.21

无人机驾驶证报考 uom民用无人机综合管理平台官网
无人机驾驶证报考 uom民用无人机综合管理平台官网

无人机驾驶证(CAAC执照)报考需年满16周岁,初中以上学历,身体健康(矫正视力1.0以上,无严重疾病),且无犯罪记录。个人需通过民航局授权的训练机构报名,经理论(法规、原理)、模拟飞行、实操(GPS/姿态模式)及地面站训练后考试合格,通常15-25天拿证。

27

2026.01.21

Python多线程合集
Python多线程合集

本专题整合了Python多线程相关教程,阅读专题下面的文章了解更多详细内容。

1

2026.01.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
【李炎恢】ThinkPHP8.x 后端框架课程
【李炎恢】ThinkPHP8.x 后端框架课程

共50课时 | 4.5万人学习

Swoft2.x速学之http api篇课程
Swoft2.x速学之http api篇课程

共16课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号