常用的PHP数据库操作方法(MYSQL版)


Posted in PHP onJune 08, 2011

一、数据库操作
1. 连接MYSQL数据
mysql_connect()
e.g.

$db = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD) or die(‘Unable to connect, please check connection paremeters');

2. 选择数据库
mysql_select_db()
连接上数据库后,PHP默认选择的数据库未必是我们后面操作中需要的数据库,为确保数据库选择正确,一般在数据库连接语句后面还要加上数据库选择语句。
e.g.
mysql_select_db(MYSQL_DB, $db) or die(mysql_error($db));

3. 执行SQL语句
mysql_query()
该函数将SQL语句发送到当前活动的数据库并执行语句,返回结果。
e.g.
$query = “SELECT * FROM $table” 
$result = mysql_query($query, $db) or die(mysql_error($db));

4. 关闭数据库
mysql_close()
该函数用于关闭不需要继续活跃的数据库,但该方法不是必须的,一般PHP会自动关闭不继续活跃的数据库。
e.g.
mysql_close($db);
5. 释放SQL结果
mysql_free_result()
该函数用于释放mysql_query()执行结果占用的内存,该函数很少被调用,除非result很大,占用太多内存;一般在PHP脚本执行结束之后很自动释放占用的内存。
二、SQL执行结果操作
1. 返回执行结果中的一行
mysql_fetch_row()
返回执行结果的当前行的数值数组,执行这个函数后,结果指向下一行。
e.g.
$row = mysql_fetch_row($result);
处理执行结果一般放在while循环中,遍历每一行
e.g.
while($row = mysql_fetch_row($result))
{……}
2. mysql_fetch_row()的替代方法
mysql_fetch_array()
mysql_fetch_assoc()
mysql_fetch_array()返回键值对数组,键为查询的table的列名;
mysql_fetch_assoc()返回结果时可以先排序(如果为可选参数赋值),相当于mysql_fetch_array()+MYSQL_ASSOC
3. 执行结果的字段(列)属性
mysql_fetch_field()
4. 查询数据库中的表名
mysql_list_tables()
e.g.
$db_name = MYSQL_DB; 
$result = mysql_list_tables($db_name); 
echo “数据库中包含如下表:”; 
while ($row = mysql_fetch_row($result)) 
{ 
echo $row[0]; 
}

5. 查询数据库的列名(字段名)
mysql_list_fields()
e.g.
$fields = mysql_list_fields($db_name,$table); 
$columns = mysql_num_fields($fields); 
for ($i = 0; $i < $columns; $i++) 
echo mysql_field_name($fields, $i);

三、其他函数
1. mysql_num_rows()
返回执行结果的行数。
e.g.
$num = mysql_num_rows($result);
2. mysql_num_fields()
返回执行结果的列数(字段数)。
e.g. $num = mysql_num_fields($result);
3.mysql_set_charset()
设置执行结果的编码,防止在网页中显示中文时乱码。
e.g.
$query = “select * from $table_name”; 
mysql_query(‘set names utf8′); 
$result = mysql_query($query, $db) or die(mysql_error($db));

注:
1. 文中大写代码为预定义的内容,如define(MYSQL_HOST, ‘localhost');
2. 本文仅总结了PHP操作数据库的主要函数,完整的内容请参考PHP手册的相关内容。
PHP 相关文章推荐
如何在WIN2K下安装PHP4.04
Oct 09 PHP
php urlencode()与urldecode()函数字符编码原理详解
Dec 06 PHP
php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]
Nov 01 PHP
PHP swfupload图片上传的实例代码
Sep 30 PHP
php读取mysql的简单实例
Jan 15 PHP
php中字符查找函数strpos、strrchr与strpbrk用法
Nov 18 PHP
php中ob函数缓冲机制深入理解
Aug 03 PHP
PHP命名空间和自动加载类
Apr 03 PHP
php处理单文件、多文件上传代码分享
Aug 24 PHP
php获取远程图片并下载保存到本地的方法分析
Oct 08 PHP
PHP API接口必备之输出json格式数据示例代码
Jun 27 PHP
Yii框架的redis命令使用方法简单示例
Oct 15 PHP
apache+php完美解决301重定向的两种方法
Jun 08 #PHP
php错误提示failed to open stream: HTTP request failed!的完美解决方法
Jun 06 #PHP
PHP 获取远程网页内容的代码(fopen,curl已测)
Jun 06 #PHP
PHP发明人谈MVC和网站设计架构 貌似他不支持php用mvc
Jun 04 #PHP
php写的简易聊天室代码
Jun 04 #PHP
php结合表单实现一些简单功能的例子
Jun 04 #PHP
PHP中对用户身份认证实现两种方法
Jun 04 #PHP
You might like
咖啡的传说和历史
2021/03/03 新手入门
编写Smarty插件在模板中直接加载数据的详细介绍
2013/06/26 PHP
浅析PHP原理之变量分离/引用(Variables Separation)
2013/08/09 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
JavaScript延迟加载
2021/03/09 Javascript
Javascript创建自定义对象 创建Object实例添加属性和方法
2012/06/04 Javascript
JS实现图片预加载无需等待
2012/12/21 Javascript
在百度知道团队中快速审批新成员的js脚本
2014/02/02 Javascript
用jquery仿做发微博功能示例
2014/04/18 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
javascript算法题:求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2015/04/01 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
JS折半插入排序算法实例
2015/12/02 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
2016/05/31 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
vue+elementUi图片上传组件使用详解
2019/08/20 Javascript
微信小程序语音同步智能识别的实现案例代码解析
2020/05/29 Javascript
python time模块用法实例详解
2014/09/11 Python
python中执行shell命令的几个方法小结
2014/09/18 Python
python在windows下实现ping操作并接收返回信息的方法
2015/03/20 Python
酷! 程序员用Python带你玩转冲顶大会
2018/01/17 Python
Django数据库表反向生成实例解析
2018/02/06 Python
Python 绘图库 Matplotlib 入门教程
2018/04/19 Python
Django ImageFiled上传照片并显示的方法
2019/07/28 Python
python如何实时获取tcpdump输出
2020/09/16 Python
Python3 用matplotlib绘制sigmoid函数的案例
2020/12/11 Python
计算机应用专业学生的自我评价分享
2013/11/03 职场文书
自我鉴定怎么写
2014/01/12 职场文书
学生党员的自我评价范文
2014/03/01 职场文书
党支部公开承诺书
2014/03/28 职场文书
向女朋友道歉的话
2015/01/20 职场文书
上课迟到检讨书
2015/05/06 职场文书
Win11如何修改dns?Win11修改dns图文教程
2022/01/18 数码科技
攻略丨滑雪究竟该选哪款对讲机?
2022/02/18 无线电