PHP连接MySQL:mysql_connect与mysql_pconnect

需积分: 11 4 下载量 71 浏览量 更新于2024-09-09 收藏 51KB DOC 举报
"PHP与MySQL连接函数的使用详解" 在PHP中,与MySQL数据库进行交互是常见的操作,本文将详细介绍两种连接MySQL的方法以及相关函数的使用。首先,我们来看两个主要的数据库连接函数:`mysql_connect()` 和 `mysql_pconnect()`,以及如何关闭连接、选择数据库和执行SQL查询。 1. `mysql_connect()` 函数 `mysql_connect()` 用于创建到MySQL服务器的新连接。函数的语法如下: ```php resource mysql_connect(string $hostname, string $username = "", string $password = "") ``` 例如: ```php $conn = @mysql_connect("localhost", "username", "password") or die("不能连接到MysqlServer"); ``` 这里的 `@` 符号是错误抑制符,用来隐藏可能的错误信息。如果连接失败,`die()` 函数会输出错误信息并停止脚本执行。 2. `mysql_pconnect()` 函数 `mysql_pconnect()` 类似于 `mysql_connect()`,但它是持久连接,意味着如果之前有相同的连接存在,它将重用而不是创建新的连接。这有助于减少服务器负载,特别是对于高流量的网站。其语法与 `mysql_connect()` 相同: ```php resource mysql_pconnect(string $hostname, string $username = "", string $password = "") ``` 示例: ```php $conn = @mysql_pconnect("localhost", "username", "password") or die("不能连接到MysqlServer"); ``` 持久连接不需要手动关闭,因为它们在会话结束时不会被真正关闭,而是保持活跃,等待下一次使用。 3. `mysql_close()` 函数 尽管 `mysql_pconnect()` 不需要显式关闭,但使用 `mysql_connect()` 创建的连接需要关闭。`mysql_close()` 用于关闭与MySQL服务器的连接。例如: ```php mysql_close(); ``` 4. `mysql_select_db()` 函数 该函数用于选择要操作的数据库。其语法如下: ```php bool mysql_select_db(string $dbname, resource $link_identifier = NULL) ``` 例如: ```php $conn = @mysql_connect("localhost", "username", "password") or die("不能连接到MysqlServer"); @mysql_select_db("MyDatabase") or die("不能选择这个数据库,或数据库不存在"); ``` 5. `mysql_query()` 函数 执行SQL查询的关键函数。它接受SQL语句作为参数,并返回结果集(如果查询是SELECT,SHOW,DESCRIBE或EXPLAIN)或TRUE(对于INSERT,UPDATE,DELETE等操作)。其语法如下: ```php resource mysql_query(string $query, resource $link_identifier = NULL) ``` 例如,执行一个简单的SELECT查询: ```php $result = mysql_query("SELECT * FROM MyTable"); while ($row = mysql_fetch_assoc($result)) { echo $row['ColumnName'] . "<br>"; } ``` 请注意,自PHP 5.5.0版本开始,`mysql_*` 函数已被弃用,推荐使用 `mysqli_*` 或 PDO 扩展进行数据库操作。如上文提到的 `mysqli_select_db()` 函数,它是 `mysql_select_db()` 的更安全替代品,适用于新项目。 总结: 了解并熟练使用这些PHP与MySQL的连接函数是构建动态Web应用程序的基础。虽然 `mysql_*` 函数已过时,但理解其工作原理对于学习更现代的数据库接口仍然有价值。在实际开发中,建议使用 `mysqli_*` 或 PDO,以获得更好的性能和安全性。