第第1212章章 PHPPHP访问数据库访问数据库作为一种主流的网络编程语言,作为一种主流的网络编程语言,PHP提供了丰富的访问数提供了丰富的访问数据库的功能,而且其本身所支持的数据库类型也非常广泛,几据库的功能,而且其本身所支持的数据库类型也非常广泛,几乎可以支持所有的主流数据库上一章已经为读者介绍了数据乎可以支持所有的主流数据库上一章已经为读者介绍了数据库的相关知识,这一章就来介绍如何使用库的相关知识,这一章就来介绍如何使用PHP访问数据库,并访问数据库,并对数据库相关内容进行操作通过本章内容的学习将会使读者对数据库相关内容进行操作通过本章内容的学习将会使读者领会到领会到PHP的强大,以及如何使用的强大,以及如何使用PHP对数据库进行操作,为对数据库进行操作,为使用使用PHP编写基于数据库的编写基于数据库的Web应用程序打下基础应用程序打下基础12.1 PHP12.1 PHP访问访问MySQLMySQL数据库数据库PHP支持几乎所有的数据库类型其中,支持几乎所有的数据库类型其中,PHP对对MySQL的支持是最为完美的因此,的支持是最为完美的因此,PHP与与MySQL也被也被称为称为“黄金组合黄金组合”。
通过通过PHP的易用性再加上的易用性再加上MySQL强大强大的数据库存储功能可以创建各种功能的的数据库存储功能可以创建各种功能的Web应用程序本应用程序本节就来介绍如何使用节就来介绍如何使用PHP的的MySQL类函数来访问类函数来访问MySQL数据库12.1.1 12.1.1 连接连接MySQLMySQL服务器服务器要想操作数据库,首先就要连接到要想操作数据库,首先就要连接到MySQL服务器在上一服务器在上一节介绍节介绍MySQL的常用操作时曾介绍过,用户可以使用客户端工的常用操作时曾介绍过,用户可以使用客户端工具具mysql.exe连接服务器而在连接服务器而在PHP中则可以通过使用中则可以通过使用PHP的的MySQL类函数类函数mysql_connect()来连接到来连接到MySQL服务器,其语服务器,其语法格式如下所示:法格式如下所示:resource mysql_connect(string server,string username,string password,bool new_link,int client_flags)12.1.2 12.1.2 创建数据库创建数据库在在MySQL主机上创建新的数据库可以通过函数主机上创建新的数据库可以通过函数mysql_query()执行所创建数据库的执行所创建数据库的SQL语句来实现。
函语句来实现函数数mysql_query()的作用是执行指定的的作用是执行指定的SQL语句,其语法语句,其语法格式如下所示:格式如下所示:resource mysql_query(string$query,resource$link_identifier)12.1.3 12.1.3 插入数据插入数据新创建的表中并没有任何内容,如果要向其中添加新创建的表中并没有任何内容,如果要向其中添加新的内容就需要执行插入记录的新的内容就需要执行插入记录的SQL语句在上一章介语句在上一章介绍的绍的SQL语法中,常见的插入记录语句语法中,常见的插入记录语句INSERT其格式如其格式如以下代码所示:以下代码所示:insert into 表名表名(字段名字段名1,字段名字段名2)values(值值1,值值2,)12.1.4 12.1.4 查询数据查询数据查 询 表 中 已 经 存 在 的 记 录 可 以 通 过 函 数查 询 表 中 已 经 存 在 的 记 录 可 以 通 过 函 数mysql_query()执行执行SELECT查询查询SQL语句来实现不过语句来实现不过在在PHP中要想查看记录,除了执行中要想查看记录,除了执行SELECT查询之外,还查询之外,还需 要 使 用 到 另 一 个需 要 使 用 到 另 一 个 P H P 的的 M y S Q L 类 函 数类 函 数msyql_fetch_array()。
该函数的作用是从结果集中取得一该函数的作用是从结果集中取得一行作为关联数组,其语法格式如下所示:行作为关联数组,其语法格式如下所示:array mysql_fetch_array(resource$result,int$result_type)12.1.5 12.1.5 修改数据修改数据除了插入数据与查询数据,使用除了插入数据与查询数据,使用PHP还可以修改表还可以修改表中已经存在的记录要执行修改记录操作,只需要通过中已经存在的记录要执行修改记录操作,只需要通过PHP的的mysql_query()函数执行函数执行UPDATE语句即可语句即可12.1.6 12.1.6 删除数据删除数据与插入、查询、修改类似,通过使用与插入、查询、修改类似,通过使用mysql_query()函数执行函数执行SQL语句语句DELETE也可以实现对表中已经存在也可以实现对表中已经存在内容进行删除的操作执行删除操作时需要注意,与更内容进行删除的操作执行删除操作时需要注意,与更新记录类似,通常需要为新记录类似,通常需要为DELETE语句添加语句添加WHERE子句子句以限定删除的条件以限定删除的条件12.1.7 12.1.7 数据库抽象类数据库抽象类PHP的数据库操作类中以的数据库操作类中以ADODB最为常用,该类功最为常用,该类功能非常强大,然而该类非常繁杂,内容非常广泛,执行能非常强大,然而该类非常繁杂,内容非常广泛,执行起来也会占用更多的内存资源。
为了解决这个问题,轻起来也会占用更多的内存资源为了解决这个问题,轻量化的量化的ADODB Lite就应运而生新的版本支持了所有就应运而生新的版本支持了所有PHP能支持的流行数据库,而且比原来的老版本快了很能支持的流行数据库,而且比原来的老版本快了很多,只需要占用完整版的多,只需要占用完整版的1/6内存即可本小节介绍的数内存即可本小节介绍的数据库抽象类就以据库抽象类就以ADODB Lite为例来介绍为例来介绍12.2 PHP12.2 PHP操作操作SQLiteSQLite数据库数据库在本书的第在本书的第11.5节中为读者介绍了节中为读者介绍了SQLite数据库,与数据库,与MySQL相比相比SQLite数据库使用更为方便因为其不需要数据库使用更为方便因为其不需要配置、不需要安装也不需要管理员,只需要提供一个数配置、不需要安装也不需要管理员,只需要提供一个数据库文件即可而且据库文件即可而且SQLite的迁移也更为方便,只需要的迁移也更为方便,只需要把相关的数据库文件(一个文件)复制转移即可把相关的数据库文件(一个文件)复制转移即可PHP也对也对SQLite数据库提供了支持本节就来介绍一下如何数据库提供了支持。
本节就来介绍一下如何实现使用实现使用PHP操作操作SQLite数据库12.2.1 12.2.1 打开数据库打开数据库要打开一个要打开一个SQLite数据库可以使用函数数据库可以使用函数sqilte_open(),该函数的语法格式如下所示:该函数的语法格式如下所示:resource sqlite_open(string$filename,int$mode,string&$error_message)12.2.2 12.2.2 创建表创建表要在打开的要在打开的SQLite数据库中创建表,可以通过函数数据库中创建表,可以通过函数sqlite_query()来执行建表来执行建表SQL语句来实现该函数的语语句来实现该函数的语法格式如下所示:法格式如下所示:resource sqlite_query(string$query,resource$dbhandle,int$result_type,string&$error_msg)12.2.3 12.2.3 插入记录插入记录与与MySQL插入记录类似,在插入记录类似,在SQLite中只需要使用中只需要使用sqlite_query()函数执行插入记录语句即可实现插入操作。
函数执行插入记录语句即可实现插入操作12.2.4 12.2.4 浏览记录浏览记录与插入记录相同,使用与插入记录相同,使用sqlite_query()执行执行SELECT查询查询语句,即可实现浏览语句,即可实现浏览SQLite表中记录的操作下面的实例演表中记录的操作下面的实例演示了浏览示了浏览SQLite表中记录的操作其中除了使用表中记录的操作其中除了使用sqlite_query()函数之外,还使用到了获取结果集记录数函函数之外,还使用到了获取结果集记录数函数数sqlite_num_rows()以及取得一行作为关联数组函数以及取得一行作为关联数组函数sqlite_fetch_array()这两个二函数与这两个二函数与MySQL类的同名函数类的同名函数用法及意义相同,这里不再详解用法及意义相同,这里不再详解12.3 PDO12.3 PDO操作数据库操作数据库PDO(PHP Data Object)是)是PHP的数据库对象扩展的数据库对象扩展该扩展为该扩展为PHP访问数据库定义了一个轻量级的、一致性的访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层该扩展提供接口,它提供了一个数据访问抽象层。
该扩展提供PHP内内置类置类PDO来对数据库进行访问,不同数据库使用相同的方来对数据库进行访问,不同数据库使用相同的方法名,从而可以解决数据库连接不统一的问题这一节就法名,从而可以解决数据库连接不统一的问题这一节就来介绍如何使用来介绍如何使用PDO来操作数据库来操作数据库12.4 12.4 小结小结本章为读者介绍了如何使用本章为读者介绍了如何使用PHP访问数据库,其中访问数据库,其中详细介绍了如何使用详细介绍了如何使用PHP访问访问MySQL数据库,如何使用数据库,如何使用数据库抽象类数据库抽象类ADODB Lite、如何使用、如何使用PHP操作操作SQLite数数据库以及如何使用据库以及如何使用PDO操作数据库其中的重点与难点操作数据库其中的重点与难点是是PHP访问访问MySQL数据库部分,该部分是其他操作的基数据库部分,该部分是其他操作的基础因为其他类的操作都具有相似之外,只要掌握了该础因为其他类的操作都具有相似之外,只要掌握了该类操作对于其他内容操作则可以触类旁通,举一反三类操作对于其他内容操作则可以触类旁通,举一反三此课件下载可自行编辑修改,供参考!感谢您的支持,我们努力做得更好!。