首页 > 代码库 > PHP访问MySQL数据库
PHP访问MySQL数据库
第9章 PHP访问MySQL数据库
1. PHP访问MySQL数据库服务器的流程
之前学习mysql的时候,采用的是”客户机/服务器”的体系结构
mysql>select * from a; --------》MySQL数据库服务器
《 ---------
PHP访问MySQL数据库的时候,我们的PHP则充当了客户机的角色
PHP充当了客户机的角色-----------》MySQL数据库服务器
《-----------
接下来我们可以通过phpinfo()的函数来确定mysql模块是否被安装
在Mysql里面,返回的数据大致可以分为两类:
Insert,update,delete(DML语句):该类语句执行成功就返回TRUE,否则就返回FALSE
Select(DQL语句):返回的是查询的结果,专业名词被称为结果集(就是结果的集合)
PHP操作数据库的步骤:其实就和在客户端操作数据库的步骤一模一样
连接数据库
|
选择数据库
|
行被影响—— 执行SQL语句----返回结果集
\ |
\ 处理结果集
|
关闭连接
2. 在PHP脚本里面连接MySQL服务器
① 连接数据库
在PHP的mysql扩展里面给我们提供了一个函数
mysql_connect(“主机名称”,”用户名”,”密码”)
就是和我们以前通过mysql客户端连接数据库的语法是一样的
如下:
在PHP里面连接数据库和在客户端一样
如果连接错误,报的错误信息也是和客户机是一样的
因为mysql数据库模块现在已经渐渐的被淘汰,现在基本上使用mysqli或者使用pdo
@:错误屏蔽运算符 可以屏蔽错误信息
连接数据库成功以后,我们就可以通过一系列的MySQL扩展函数来查看数据库的相关信息
Mysql_get_client_info():获取客户端信息
Mysql_get_host_info():获取主机信息
Mysql_get_proto_info():获取mysql的协议信息
Mysql_get_server_info():获取mysql中的服务器信息
② 选择数据库
Mysql_select_db(“数据库名称”,数据库资源变量)
这一步和mysql里面的use 数据库名操作是一样的
③ 发送SQL语句
Mysql里面提供了mysql_query()函数用于执行sql语句的,执行该语句后,如果返回结果集,那么接收结果集的变量是一个资源类型变量
如果执行的语句没有结果集返回,则返回TRUE或者FALSE,所以自然接收返回值的变量的数据类型也是布尔类型
④ 处理结果集
处理结果集的函数有下面4个:
Mysql_fetch_row():将结果集中的一条记录返回并且以索引数组的形式保存
Mysql_fetch_assoc():将结果集中的一条记录返回并且以关联数组的形式保存
Mysql_fetch_array():将结果集中的一条记录返回并且以索引和关联数组的形式保存,MYSQL_BOTH,MYSQL_NUM,MYSQL_ASSOC
Mysql_fetch_object():将结果集中的一条记录以对象的形式进行返回
将结果集里面的所有数据都打印出来,需要外层使用一个while语句
将数据以表格的形式打印输出
⑤ 关闭连接,释放资源
可以通过mysql_free_result()函数来释放资源
通过mysql_close来关闭数据库连接
接下来再介绍几个比较常用的mysql扩展函数
Mysql_field_name():获取字段名
Mysql_num_rows():获取结果集中行的数量
Mysql_num_field():获取结果集中列的数量
MySQLi
Mysqli是在mysql的基础上的一个升级。最大的改进在于采用面向对象的思想,之前的mysql是面向过程的,像c语言一样。
Mysqli虽然采用了面向对象的思想,但是仍然可以采用函数式编程
PHP访问MySQL数据库