PHP与MySQL数据库交互:从连接到查询,掌握数据库操作基础
发布时间: 2024-07-23 02:54:08 阅读量: 32 订阅数: 42
![PHP与MySQL数据库交互:从连接到查询,掌握数据库操作基础](https://img-blog.csdnimg.cn/20190130144438802.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5NTgyOTYw,size_16,color_FFFFFF,t_70)
# 1. PHP与MySQL数据库交互基础
PHP是一种广泛使用的服务器端脚本语言,它提供了丰富的函数库,用于与MySQL等关系型数据库进行交互。通过使用PHP,开发者可以轻松地执行查询、插入、更新和删除操作,从而实现对MySQL数据库的管理和操作。
本章将介绍PHP与MySQL数据库交互的基础知识,包括建立数据库连接、执行查询语句、获取查询结果以及处理查询结果类型。通过对这些基础知识的掌握,开发者可以为构建基于数据库的Web应用程序奠定坚实的基础。
# 2. PHP连接MySQL数据库
### 2.1 建立数据库连接
在PHP中,连接MySQL数据库可以通过两种方式:mysqli函数和PDO类。
#### 2.1.1 mysqli_connect() 函数
mysqli_connect()函数用于建立与MySQL数据库的连接。其语法如下:
```php
mysqli_connect(host, username, password, dbname, port, socket);
```
其中,
* host:数据库服务器地址或主机名
* username:数据库用户名
* password:数据库密码
* dbname:要连接的数据库名称
* port:数据库服务器端口(可选,默认为3306)
* socket:数据库服务器套接字(可选,仅在使用本地套接字连接时使用)
例如:
```php
$mysqli = mysqli_connect("localhost", "root", "password", "my_database");
```
#### 2.1.2 PDO 连接方式
PDO(PHP Data Objects)是一种面向对象的方式来连接和操作数据库。要使用PDO连接MySQL数据库,需要执行以下步骤:
1. 创建一个PDO对象:
```php
$dsn = "mysql:host=localhost;dbname=my_database";
$user = "root";
$password = "password";
$pdo = new PDO($dsn, $user, $password);
```
2. 设置PDO错误模式:
```php
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
```
### 2.2 处理连接错误
在建立数据库连接时,可能会遇到错误。处理这些错误非常重要,以确保应用程序的健壮性。
#### mysqli_connect() 函数
mysqli_connect()函数返回一个mysqli对象,如果连接成功,则该对象不为null。如果连接失败,则返回false并设置错误信息:
```php
if (!$mysqli) {
die("Error connecting to MySQL: " . mysqli_connect_error());
}
```
#### PDO 连接方式
PDO对象具有一个getAttribute()方法,可以用来获取错误信息:
```php
try {
$pdo = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
die("Error connecting to MySQL: " . $e->getMessage());
}
```
# 3.1 执行查询语句
在与 MySQL 数据库交互时,执行查询语句是至关重要的。PHP 提供了多种方法来执行查询,包括 mysqli_query() 函数和 PDO prepare() 和 execute() 方法。
#### 3.1.1 mysqli_query() 函数
mysqli_query() 函数用于执行 SQL 查询语句。它接受两个参数:
- 数据库连接句柄
- SQL 查询语句
```php
$conn = mysqli_connect("localhost", "root", "password", "database_name");
$result = mysqli_query($conn, "SELECT * FROM table_name");
```
mysqli_query() 函数返回一个结果集对象,该对象包含查询结果。如果查询执行失败,则返回 FALSE。
#### 3.1.2 PDO prepare() 和 execute() 方法
PDO 提供了一种更安全、更灵活的方式来执行查询语句。PDO prepare() 方法用于准备查询语句,而 PDO execute() 方法用于执行已准备好的查询。
```php
$conn = new PDO("mysql:host=localhost;dbname=database_name", "root", "password");
$stmt = $conn->prepare("SELECT * FROM table_name");
$stmt->execute();
```
PDO prepare() 方法返回一个 PDOStatement 对象,该对象包含已准备好的查询。PDO execute() 方法执行已准备好的查询并返回一个结果集对象。
**参数说明:**
- **mysqli_query() 函数:**
- 数据库连接句柄:表示已建立
0
0