常用的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 相关文章推荐
PHP strtotime函数详解
Dec 18 PHP
PHP仿盗链代码
Jun 03 PHP
PHP合并两个数组的两种方式的异同
Sep 14 PHP
PHP调用VC编写的COM组件实例
Mar 29 PHP
PHP中new static() 和 new self() 的区别介绍
Jan 09 PHP
php实现session自定义会话处理器的方法
Jan 27 PHP
php使用cookie实现记住登录状态
Apr 27 PHP
又十个超级有用的PHP代码片段
Sep 24 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
Feb 23 PHP
php读取XML的常见方法实例总结
Apr 25 PHP
visual studio code 调试php方法(图文详解)
Sep 15 PHP
thinkPHP框架整合tcpdf插件操作示例
Aug 07 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转成EXE文件
2006/10/09 PHP
mysql 搜索之简单应用
2007/04/27 PHP
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
2008/11/18 PHP
在PHP中养成7个面向对象的好习惯
2010/07/17 PHP
PHP 中关于ord($str)&amp;gt;0x80的详细说明
2012/09/23 PHP
PHP各种常见经典算法总结【排序、查找、翻转等】
2019/08/05 PHP
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
javascript下数值型比较难点说明
2010/06/07 Javascript
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
2011/10/22 Javascript
使用GruntJS构建Web程序之构建篇
2014/06/04 Javascript
jQuery中DOM树操作之复制元素的方法
2015/01/23 Javascript
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
JavaScript实现动态添加,删除行的方法实例详解
2015/07/02 Javascript
Angularjs 滚动加载更多数据
2016/03/17 Javascript
JavaScript驾驭网页-CSS与DOM
2016/03/24 Javascript
Bootstrap下拉菜单样式
2017/02/07 Javascript
Angular实现表单验证功能
2017/11/13 Javascript
微信小程序swiper组件用法实例分析【附源码下载】
2017/12/07 Javascript
微信小程序实现无限滚动列表
2020/05/29 Javascript
PostgreSQL Node.js实现函数计算方法示例
2019/02/12 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
Python使用django搭建web开发环境
2017/06/09 Python
Ubuntu 下 vim 搭建python 环境 配置
2017/06/12 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现
2020/02/17 Python
pytorch masked_fill报错的解决
2020/02/18 Python
Django权限设置及验证方式
2020/05/13 Python
python实现126邮箱发送邮件
2020/05/20 Python
浅谈keras中loss与val_loss的关系
2020/06/22 Python
UGG英国官方网站:UGG UK
2018/02/08 全球购物
四年级评语大全
2014/04/21 职场文书
学生检讨书范文
2014/10/30 职场文书
《思路决定出路》读后感3篇
2019/12/11 职场文书
mysql sum(if())和count(if())的用法说明
2022/01/18 MySQL
微信小程序中使用vant框架的具体步骤
2022/02/18 Javascript