常用的PHP数据库操作方法(MYSQL版)
作者:bea
一、数据库操作 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默认选择的数据库未必是我们后面操作中需要的数据库
一、数据库操作 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手册的相关内容。
有用 | 无用
代码如下:
$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手册的相关内容。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- IIS7.X配置PHP运行环境小结
- php基础学习之变量的使用
- php学习之数据类型之间的转换介绍
- php学习之运算符相关概念
- php学习之流程控制实现代码
- php学习之简单计算器实现代码
- php学习之 循环结构实现代码
- php学习笔记之 函数声明(二)
- php学习笔记之 函数声明
- php学习之 数组声明
- php学习笔记 数组遍历实现代码
- php学习笔记 [预定义数组(超全局数组)]
- ThinkPHP自动验证失败的解决方法
- PHP下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
- 一个PHP缓存类代码(附详细说明)
- php下通过IP获取地理位置的代码(小偷程序)
- php 面试碰到过的问题 在此做下记录
- rephactor 优秀的PHP的重构工具
- php获取post中的json数据的实现方法