首页 > PHP开发 > php中级 > PHP数据库扩展之原生MySQL API
2014
11-07

PHP数据库扩展之原生MySQL API

在写新的代码时,不推荐使用本扩展。您应该使用 mysqli 或者 PDO_MySQL 扩展代替。

安装

编译时,只要使用 --with-mysql[=DIR] 配置选项即可,其中可选的 [DIR] 指向 MySQL 的安装目录。

虽然本 MySQL 扩展库兼容 MySQL 4.1.0 及其以后版本,但是它不支持这些版本提供的额外功能。要使用这些功能,请使用 MySQLi 扩展库。

如果要同时安装 mysql 扩展库和 mysqli 扩展库,必须使用同一个客户端库以避免任何冲突。

范例

这个简单的范例展示了如何连接、执行一个查询,打印结果集后断开 MySQL 数据库的连接。

Example #1 MySQL 扩展概述范例

<?php
    // 连接、选择数据库
    $link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')
        or die('Could not connect: ' . mysql_error());
    echo 'Connected successfully';
    mysql_select_db('my_database') or die('Could not select database');

    // 执行 SQL 查询
    $query = 'SELECT * FROM my_table';
    $result = mysql_query($query) or die('Query failed: ' . mysql_error());

    // 以 HTML 打印查询结果
    echo "<table>\n";
    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
        echo "\t<tr>\n";
        foreach ($line as $col_value) {
            echo "\t\t<td>$col_value</td>\n";
        }
        echo "\t</tr>\n";
    }
    echo "</table>\n";

    // 释放结果集
    mysql_free_result($result);

    // 关闭连接
    mysql_close($link);
?>

MySQL 函数

大多数 MySQL 函数的最后一个可选参数是 link_identifier。 如果没有提供这个参数,则会使用最后一个打开的连接。 若不存在这个最后打开的连接,则会尝试用 php.ini 里定义的默认参数来连接。 如果没有成功连接,函数会返回 FALSE

编程技巧