PHP 中的数据库查询语法133


在进行 Web 开发时,经常需要从关系数据库中检索数据。PHP 作为一种流行的服务器端语言,提供了广泛的函数来有效地查询和操作数据库。

准备连接

在进行任何查询操作之前,需要建立与数据库的连接。可以使用 MySQLi 或 PDO 等 PHP 扩展程序来实现此目的。以下示例展示了使用 MySQLi 建立连接:```php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
```

查询语法

PHP 提供了一个 `mysqli_query()` 函数来执行 SQL 查询。该函数接受两个参数:连接对象和 SQL 查询字符串。查询字符串可以是任何有效的 SQL 语句,例如 SELECT、INSERT、UPDATE 或 DELETE。```php
// 查询所有用户
$sql = "SELECT * FROM users";
// 执行查询
$result = $conn->query($sql);
```

处理结果

`mysqli_query()` 函数返回一个 `mysqli_result` 对象,其中包含查询结果。可以使用各种方法来访问结果集中的数据,包括:* mysqli_fetch_array():返回当前行的关联和索引数组。
* mysqli_fetch_assoc():返回当前行的关联数组。
* mysqli_fetch_object():返回当前行的对象。
* mysqli_fetch_row():返回当前行的索引数组。
```php
// 循环遍历结果集
while ($row = $result->fetch_assoc()) {
echo "用户名: " . $row["username"] . "
";
}
```

更新数据

PHP 也支持更新数据库中的数据。可以使用 `mysqli_insert_id()`、`mysqli_affected_rows()` 和 `mysqli_error()` 函数来检查更新操作的状态。```php
// 插入新用户
$sql = "INSERT INTO users (username, password) VALUES ('new_user', 'new_password')";
// 执行查询
$conn->query($sql);
// 检查是否成功插入
if ($conn->insert_id > 0) {
echo "新用户已插入";
} else {
echo "插入失败: " . $conn->error;
}
```

关闭连接

在完成所有数据库操作后,务必关闭连接以释放资源。可以使用 `mysqli_close()` 函数来关闭连接。```php
// 关闭连接
$conn->close();
```

最佳实践* 使用参数化查询(Prepared Statements)以防止 SQL 注入攻击。
* 使用事务以确保数据库操作的原子性和一致性。
* 使用索引以提高查询性能。
* 定期备份数据库以防止数据丢失。
* 使用调试工具(如 Xdebug)以识别和解决问题。

2024-11-10


上一篇:PHP 从 FTP 服务器下载文件

下一篇:文件读写权限管理:PHP 完全指南