使用 PHP 连接和操作数据库77


在 PHP 中,数据库操作是常见的任务。PHP 提供了多种方法来连接和操作数据库,包括 MySQL、PostgreSQL、Oracle 和 SQLite 等。

连接到数据库

要连接到数据库,可以使用 PHP 的内置 mysqli 或 PDO 扩展。mysqli 扩展提供与 MySQL 数据库的交互,而 PDO 则提供与多种数据库(包括 MySQL、PostgreSQL 和 Oracle)的统一接口。```php
// 使用 mysqli 连接到 MySQL 数据库
$mysqli = new mysqli("localhost", "username", "password", "database_name");
// 使用 PDO 连接到 MySQL 数据库
$pdo = new PDO("mysql:host=localhost;dbname=database_name", "username", "password");
```

执行 SQL 查询

连接到数据库后,可以使用 mysqli_query() 函数或 PDO::query() 方法执行 SQL 查询。mysqli_query() 函数返回一个 MySQL 结果资源,而 PDO::query() 方法返回一个 PDOStatement 对象。```php
// 使用 mysqli 执行 SQL 查询
$result = $mysqli->query("SELECT * FROM table_name");
// 使用 PDO 执行 SQL 查询
$statement = $pdo->query("SELECT * FROM table_name");
```

获取查询结果

执行 SQL 查询后,可以使用 mysqli_fetch_array() 函数或 PDOStatement::fetch() 方法获取查询结果。mysqli_fetch_array() 函数返回查询结果的关联数组或数字数组,而 PDOStatement::fetch() 方法返回查询结果的关联数组、数字数组或对象数组。```php
// 使用 mysqli 获取查询结果
while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
echo $row['column_name'];
}
// 使用 PDO 获取查询结果
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
echo $row['column_name'];
}
```

插入数据

要向数据库中插入数据,可以使用 mysqli_query() 函数或 PDO::exec() 方法执行 INSERT 语句。mysqli_query() 函数返回插入行的数量,而 PDO::exec() 方法返回受影响的行数。```php
// 使用 mysqli 插入数据
$mysqli->query("INSERT INTO table_name (column_name) VALUES ('value')");
// 使用 PDO 插入数据
$statement = $pdo->prepare("INSERT INTO table_name (column_name) VALUES (?)");
$statement->execute([$value]);
```

更新数据

要更新数据库中的数据,可以使用 mysqli_query() 函数或 PDO::exec() 方法执行 UPDATE 语句。mysqli_query() 函数返回受影响的行数,而 PDO::exec() 方法返回受影响的行数。```php
// 使用 mysqli 更新数据
$mysqli->query("UPDATE table_name SET column_name = 'value' WHERE id = 1");
// 使用 PDO 更新数据
$statement = $pdo->prepare("UPDATE table_name SET column_name = ? WHERE id = ?");
$statement->execute([$value, $id]);
```

删除数据

要从数据库中删除数据,可以使用 mysqli_query() 函数或 PDO::exec() 方法执行 DELETE 语句。mysqli_query() 函数返回受影响的行数,而 PDO::exec() 方法返回受影响的行数。```php
// 使用 mysqli 删除数据
$mysqli->query("DELETE FROM table_name WHERE id = 1");
// 使用 PDO 删除数据
$statement = $pdo->prepare("DELETE FROM table_name WHERE id = ?");
$statement->execute([$id]);
```

关闭连接

执行完数据库操作后,应使用 mysqli_close() 函数或 PDO::close() 方法关闭数据库连接。这将释放与数据库关联的任何资源。```php
// 使用 mysqli 关闭连接
$mysqli->close();
// 使用 PDO 关闭连接
$pdo = null;
```

2024-10-15


上一篇:使用 PHP 连接 MySQL 数据库并检索数据

下一篇:PHP 数组差集:比较和排除数组元素