常用的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 相关文章推荐
Content-type 的说明
Oct 09 PHP
PHP4(windows版本)中的COM函数
Oct 09 PHP
php 用checkbox一次性删除多条记录的方法
Feb 23 PHP
PHP 数组基础知识小结
Aug 20 PHP
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
Jul 16 PHP
PHP分页效率终结版(推荐)
Jul 01 PHP
php根据分类合并数组的方法实例详解
Nov 06 PHP
PHP数组去重比较快的实现方式
Jan 19 PHP
Zend Framework入门知识点小结
Mar 19 PHP
一波PHP中cURL库的常见用法代码示例
May 06 PHP
php 生成Tab键或逗号分隔的CSV
Sep 24 PHP
php计数排序算法的实现代码(附四个实例代码)
Mar 31 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
PHP关联链接常用代码
2012/11/05 PHP
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
PHP实现抓取HTTPS内容
2014/12/01 PHP
PHP获取文件相对路径的方法
2015/02/26 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
PHP序列化/对象注入漏洞分析
2016/04/18 PHP
javascript下给元素添加事件的方法与代码
2007/08/13 Javascript
JavaScript读取中文cookie时的乱码问题的解决方法
2009/10/14 Javascript
如何确保JavaScript的执行顺序 之jQuery.html深度分析
2011/03/03 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
javascript学习笔记(十四) window对象使用介绍
2012/06/20 Javascript
定时器(setTimeout/setInterval)调用带参函数失效解决方法
2013/03/26 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
js添加绑定事件的方法
2016/05/15 Javascript
JS实现最简单的冒泡排序算法
2017/02/15 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
2017/08/24 Javascript
bootstrap实现二级下拉菜单效果
2017/11/23 Javascript
Vue组件通信的四种方式汇总
2018/02/08 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
Cookbook组件形式:优化 Vue 组件的运行时性能
2018/11/25 Javascript
js实现列表按字母排序
2020/08/11 Javascript
[01:35:53]完美世界DOTA2联赛PWL S3 Magma vs GXR 第二场 12.13
2020/12/17 DOTA
跟老齐学Python之关于循环的小伎俩
2014/10/02 Python
Python如何快速实现分布式任务
2017/07/06 Python
python 获取毫秒数,计算调用时长的方法
2019/02/20 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
Python利用逻辑回归分类实现模板
2020/02/15 Python
python mysql 字段与关键字冲突的解决方式
2020/03/02 Python
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
应届毕业生个人自我评价
2013/09/20 职场文书
会计自我鉴定范文
2013/10/06 职场文书
《美丽的公鸡》教学反思
2014/02/25 职场文书
国际会计专业求职信
2014/08/04 职场文书
承诺书范本
2015/01/21 职场文书
幼儿园新生开学寄语
2015/05/27 职场文书
廉政党课工作报告案例
2019/06/21 职场文书