第1章PHP操作数据库

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章PHP操作数据库让IT教学更简单,让IT学习更有效PHP访问数据库步骤mysql扩展mysqli扩展PDO扩展✎学习目标让IT教学更简单,让IT学习更有效掌握PHP访问数据库的基本步骤,可对访问MySQL数据库进行描述14掌握PDO扩展,学会使用PDO的统一接口对不同数据库进行操作3熟悉mysqli扩展,能够使用面向对象语法的方式操作MySQL数据库2掌握mysql扩展,会使用PHP对MySQL数据库进行增、删、改、查操作目录让IT教学更简单,让IT学习更有效mysql扩展的使用PDO扩展的使用PHP访问MySQL☞点击查看本小节知识架构mysqli扩展的使用☞点击查看本小节知识架构☞点击查看本小节知识架构☞点击查看本小节知识架构1.1PHP访问MySQL1.1.11.1.2PHP访问MySQL的基本步骤相关扩展介绍返回目录知识架构让IT教学更简单,让IT学习更有效1.2mysql扩展的使用1.2.11.2.21.2.3连接MySQL服务器选择数据库执行SQL语句返回目录知识架构让IT教学更简单,让IT学习更有效1.2.4处理结果集1.2.5释放资源与关闭连接1.3mysqli扩展的使用1.3.11.3.2mysqli连接并选择数据库mysqli操作数据库返回目录知识架构让IT教学更简单,让IT学习更有效1.4PDO扩展的使用1.4.11.4.21.4.3什么是PDOPDO连接数据库PDO执行SQL语句返回目录知识架构让IT教学更简单,让IT学习更有效1.4.4PDO处理结果集1.4.5PDO错误处理机制PHP如何访问MySQL数据库?让IT教学更简单,让IT学习更有效1.1PHP访问MySQL首先,看一下在MySQL客户端操作数据库的步骤连接MySQL服务器选择数据库执行SQL语句mysql-hlocalhost-uroot-puse数据库名称select、insert、update、delete让IT教学更简单,让IT学习更有效1.1PHP访问MySQL让IT教学更简单,让IT学习更有效PHP访问MySQL数据库服务器的基本步骤1•连接MySQL服务器——mysql_connect()2•选择数据库——mysql_select_db()3•执行SQL语句——mysql_query()4•处理结果集——mysql_fetch_array()等5•释放资源与关闭连接——mysql_free_result()和mysql_close()1.1PHP访问MySQL让IT教学更简单,让IT学习更有效相关扩展介绍PHP中提供了操作不同数据库的扩展,这里只介绍其中常用的三种扩展:mysql扩展、mysqli扩展以及PDO扩展。mysql扩展mysqli扩展PDO扩展1.1PHP访问MySQL让IT教学更简单,让IT学习更有效在默认情况下,mysql扩展已经安装好了,但没有开启。开启mysql扩展重启Apache服务器查看是否开启成功;extension=php_mysql.dll打开PHP配置文件php.ini?phpphpinfo();1.1PHP访问MySQL让IT教学更简单,让IT学习更有效mysqli扩展是mysql的增强版扩展,它是MySQL4.1及以上版本提供的功能。默认情况下已经安装好了,但未开启。开启mysqli扩展重启Apache服务器查看是否开启成功;extension=php_mysqli.dll打开PHP配置文件php.ini?phpphpinfo();1.1PHP访问MySQL让IT教学更简单,让IT学习更有效为解决不同数据库扩展不兼容的问题,PHP开发人员编写了一种轻型、便利的API,即数据库抽象层——PDO扩展。开启PDO扩展重启Apache服务器查看是否开启成功;extension=php_pdo_mysql.dll打开PHP配置文件php.ini?phpphpinfo();1.1PHP访问MySQLresourcemysql_connect([string$server[,string$username[,string$password[,bool$new_link[,int$client_flags]]]]])1.2mysql扩展的使用让IT教学更简单,让IT学习更有效连接MySQL服务器在操作MySQL数据库之前,需要先与MySQL数据库服务器建立连接。在PHP的mysql扩展中通常使用mysql_connect()函数与其建立连接。其声明方式如下:$server参数默认值是“localhost:3306”,其中localhost表示本地服务器,3306表示默认端口号(可以省略)。$username参数表示登陆MySQL服务器的用户名。$password参数表示MySQL服务器的用户密码。$new_link参数该函数每次被调时时总是打开新的连接。$client_flags参数值是MySQL客户端常量,在实际使用中较少,具体参考PHP手册。1.2mysql扩展的使用让IT教学更简单,让IT学习更有效在操作MySQL数据库之前,需要先与MySQL数据库服务器建立连接。在PHP的mysql扩展中通常使用mysql_connect()函数与其建立连接。连接MySQL服务器为了让读者更好地掌握mysql_connect()函数的用法,接下来通过一个案例来演示如何进行数据库的连接。[点击查看例1-1]1.2mysql扩展的使用让IT教学更简单,让IT学习更有效在操作MySQL数据库之前,需要先与MySQL数据库服务器建立连接。在PHP的mysql扩展中通常使用mysql_connect()函数与其建立连接。在连接数据库发生错误时,会出现错误信息,但在上线项目中建议对错误信息进行屏蔽,并可以自定义错误提示,通常有如下两种方式:•$link=@mysql_connect('localhost:3306',‘rot','123456');•$link=mysql_connect('localhost:3306','root','123456')ordie('数据库服务器连接失败!');建议在程序开发阶段不要屏蔽错误信息,避免出错后难以找到问题。连接MySQL服务器1.2mysql扩展的使用让IT教学更简单,让IT学习更有效选择数据库连接MySQL数据库成功之后,接下来使用mysql_select_db()函数选择数据库。其声明方式如下:boolmysql_select_db(string$database_name[,resource$link_identifier])第一个参数要选择的数据库名称第二个参数表示MySQL连接,默认使用最近打开的连接;如果没有找到该连接,则尝试不带参数调用mysql_connect()来创建;如果没有找到并无法建立该连接,则会生成E_WARNING级别的错误。1.2mysql扩展的使用让IT教学更简单,让IT学习更有效选择数据库连接MySQL数据库成功之后,接下来使用mysql_select_db()函数选择数据库。接下来通过一个案例来演示如何使用此函数选择数据库。[点击查看例1-2]1.2mysql扩展的使用让IT教学更简单,让IT学习更有效执行SQL语句完成数据库的选择后,就是对SQL语句的执行操作了,在PHP中,通常使用mysql_query()函数执行SQL语句。其声明方式如下:resourcemysql_query(string$query[,resource$link_identifier=NULL])$query表示SQL查询语句,但是查询字符串不应以“;”结束。$link_idenifier是可选项,表示MySQL连接标识若省略,则使用最近打开的连接。1.2mysql扩展的使用让IT教学更简单,让IT学习更有效执行SQL语句完成数据库的选择后,就是对SQL语句的执行操作了,在PHP中,通常使用mysql_query()函数执行SQL语句。•该函数仅对SELECT、SHOW、EXPLAIN或DESCRIBE语句,执行成功返回一个资源标识符,失败返回FALSE。•如果SQL语句是INSERT、DELETE、UPDATE等操作指令,成功则返回TRUE,否则返回FALSE。•选择数据库的操作也可使用mysql_query(‘use数据库名称’)函数。1.2mysql扩展的使用让IT教学更简单,让IT学习更有效执行SQL语句完成数据库的选择后,就是对SQL语句的执行操作了,在PHP中,通常使用mysql_query()函数执行SQL语句。接下来通过一个案例来演示如何使用此函数执行SQL语句。[点击查看例1-3]1.2mysql扩展的使用让IT教学更简单,让IT学习更有效处理结果集执行完SQL语句后,需要使用函数从结果集中获取信息,在PHP中常用的处理结果集的函数有mysql_fetch_row()函数、mysql_fetch_assoc()函数、mysql_fetch_array()函数以及mysql_fetch_object()函数。接下来将针对这些函数进行详细地讲解。1.2mysql扩展的使用让IT教学更简单,让IT学习更有效处理结果集mysql_fetch_row()函数arraymysql_fetch_row(resource$result)其声明方式如下:接下来通过从itcast数据库中获取图书列表来演示如何使用该函数获取结果集。返回值是数组类型。参数$result表示资源型结果集。每执行一次该函数都将从结果集资源中取出一条记录放入到一维数组中,下标从0开始,并且内部数据指针自动指向下一条数据,直到没有更多行时返回FALSE。[点击查看例1-4]1.2mysql扩展的使用让IT教学更简单,让IT学习更有效1.2mysql扩展的使用让IT教学更简单,让IT学习更有效处理结果集mysql_fetch_assoc()函数arraymysql_fetch_assoc(resource$result)其声明方式如下:接下来使用此函数来获取结果集实现例1-4的功能。与mysql_fetch_row()函数唯一的区别是通过字段名称的方式获取数据。[点击查看例1-5]1.2mysql扩展的使用让IT教学更简单,让IT学习更有效由于mysql扩展自PHP5.5.0起已废弃,并在将来会被移除。可使用以下PDO_MySQL和MySQLi扩展中的函数来代替:•PDOStatement::fetch(PDO::FETCH_ASSOC)•mysqli_fetch_assoc()处理结果集mysql_fetch_assoc()函数1.2mysql扩展的使用让IT教学更简单,让IT学习更有效处理结果集mysql_fetch_array()函数arraymysql_fetch_array(resource$result[,int$result_type])其声明方式如下:接下来通过一个简单的案例来演示mysql_fetch_array()函数的用法。$result是资源类型的参数,传入的是由mysql_query()函数返回的数据指针。$result_type是可选的常量,其值可以是以下几种形式:•MYSQL_BOTH(默认参数),可同时得到关联索引和数字索引。•MYSQL_ASSOC,只得到关联索引,形如mysql_fetch_assoc()函数。•MYSQL_NUM,只得到数字索引,形如mysql_fetch_row()。[点击查看例1-6]1.2mysql扩展的使用让IT教学更简单,让IT学习更有效处理结果集mysql_fetch_array()函数•mysql_fetch_array()函数返回的字段名区分大小写。•在获取结果集时比用mysql_fetch_row()慢,而且还提供了明显更多的值。•如果结果中的两个或以上的列具有相同的字段名,最后一列优先级最高,要访问其他列,必须用该列的数字索引或给该列起别名。1.2mysql扩展的使用让IT教学更简单,让

1 / 79
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功