在上章中,我们学习了如何连接数据库,这一步是我们进行数据库操作的基础。在这一章,我们将深入探讨基本的CRUD操作,即创建(Create)、读取(Read)、更新(Update)和删除(Delete)操作。这是与数据库交互时最基本也是最常用的操作。我们将通过实际案例来加深理解。
1. 创建数据(Create)
创建数据的操作通常对应于执行SQL中的INSERT
语句。我们首先需要确保已成功连接到数据库。
示例代码
假设我们有一个名为users
的表,包含id
、name
和email
字段。以下是插入新用户的代码示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <?php
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database_name";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); }
$name = "John Doe"; $email = "john@example.com";
$sql = "INSERT INTO users (name, email) VALUES ('$name', '$email')";
if ($conn->query($sql) === TRUE) { echo "新记录插入成功"; } else { echo "错误: " . $sql . "<br>" . $conn->error; }
$conn->close(); ?>
|
解析
在上面的代码中,我们使用了INSERT INTO
语句将一条新用户数据插入到users
表中。注意,实际的应用中应使用参数化查询以防止SQL注入,具体实现将在后续章节讨论。
2. 读取数据(Read)
读取数据是指执行SQL中的SELECT
语句。我们可以从表中查询一条或多条记录。
示例代码
下面是查询所有用户的代码示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <?php
$sql = "SELECT id, name, email FROM users"; $result = $conn->query($sql);
if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"] . "<br>"; } } else { echo "0 结果"; }
$conn->close(); ?>
|
解析
在此代码段中,我们通过SELECT
语句查询users
表内的所有记录,然后使用fetch_assoc()
方法逐行输出每条记录的信息。
3. 更新数据(Update)
更新数据的操作通常对应于执行SQL中的UPDATE
语句。我们可以在数据库中修改已存在的记录。
示例代码
以下是更新用户信息的代码示例,假设我们要更新id = 1
的用户的姓名:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <?php
$sql = "UPDATE users SET name='Jane Doe' WHERE id=1";
if ($conn->query($sql) === TRUE) { echo "记录更新成功"; } else { echo "错误: " . $conn->error; }
$conn->close(); ?>
|
解析
在上面的代码中,我们使用UPDATE
语句来更新特定用户的姓名。确保在WHERE
子句中指定条件以避免更新表中的所有记录。
4. 删除数据(Delete)
删除数据对应于执行SQL中的DELETE
语句。可以通过条件删除一条或多条记录。
示例代码
以下是删除id = 1
的用户的代码示例:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <?php
$sql = "DELETE FROM users WHERE id=1";
if ($conn->query($sql) === TRUE) { echo "记录删除成功"; } else { echo "错误: " . $conn->error; }
$conn->close(); ?>
|
解析
在这里,我们使用DELETE
语句来删除特定的用户记录。请注意,如果缺少WHERE
子句,将删除表中的所有数据,这可能不是我们想要的结果。
小结
到此为止,我们介绍了基本的CRUD操作。通过这些操作,您已经能够与数据库进行基本的数据交互。下章我们将讨论SQL注入及相关安全措施,这是开发安全Web应用程序的关键环节。希望您能在下章中继续学习提升!