首页 » 建站技术 » WordPress » 浏览内容

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


2011-05-20 21:46:23 2,613 0 发表评论 字体: 作者:C.K.
标签: phpsql语句WordPress代码

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

Gevin最近一直在折腾自己的网站首页——Gevin的空间,写的大部分PHP脚本都要用到和MYSQL数据库相关的操作,今天把这些方法和大家分享一下,希望大家能多多交流!

一、数据库操作
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手册的相关内容
    本文来自:http://blog.igevin.info/archives/990

      网站统计 Statistics

      • 创建时间: 2005年1月3日 距今5012 天
      • 日志总数: 2461
      • 评论总数: 630
      • 标签总数: 654
      • 链接总数: 273
      • 最后更新: 2018-8-31 17:57:04
      • 您是本站第 13942252 位访客

      广告区 Guǎng Gào