PHP数据库函数:使用MySQL连接数据库
在PHP中,连接到MySQL数据库需要使用MySQLi或PDO扩展。这些扩展不仅能够连接到MySQL数据库,还可以执行SQL语句和处理返回的数据。在本文中,我们将使用MySQLi扩展来连接MySQL数据库。
连接到数据库
在连接到数据库之前,您需要使用以下信息:
- 主机名
- 用户名
- 密码
- 数据库名称
使用以下代码连接到MySQL数据库:
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
说明:
- $servername - MySQL服务器的名称,通常是“localhost”。
- $username - 连接到MySQL服务器使用的用户名。
- $password - 连接到MySQL服务器使用的密码。
- $dbname - 要连接的数据库的名称。
行连接到MySQL服务器并尝试连接到数据库。如果连接失败,则脚本将终止并显示连接错误。如果连接成功,则将输出 “连接成功” 。
查询数据
一旦连接到MySQL数据库,您可以执行SQL查询。使用以下代码在“customers”表中查询所有记录:
$sql = "SELECT * FROM customers";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出每一行的数据
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " " . $row["email"]. "<br>";
}
} else {
echo "0 结果";
}
代码解释:
- $sql - SQL查询,选择从“customers”表中检索所有记录。
- $result - 执行SQL查询,并将结果存储在变量中。
- num_rows - 检查查询结果中的行数,并检查是否存在结果。
- fetch_assoc() - 从结果中获取所有行,并输出每一行的数据。
插入数据
如果要将新数据插入到MySQL数据库中,请使用以下代码:
$sql = "INSERT INTO customers (name, email) VALUES ('John Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "新纪录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
代码解释:
- $sql - SQL查询,将一行插入到“customers”表中,包括“名字”和“电子邮件”列。
- query() - 将SQL查询发送到数据库。
- ===TRUE - 确定SQL查询是否成功。
更新数据
要更新数据,请使用以下代码:
$sql = "UPDATE customers SET name='Johan Doe' WHERE id=1";
if ($conn->query($sql) === TRUE) {
echo "记录更新成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
代码解释:
- $sql - SQL查询,将名为“Johan Doe”的名字插入到ID为1的客户记录中。
- query() - 将SQL查询发送到数据库。
- ===TRUE - 确定SQL查询是否成功。
删除数据
要删除数据,请使用以下代码:
$sql = "DELETE FROM customers WHERE id=1";
if ($conn->query($sql) === TRUE) {
echo "记录删除成功";
} else {
echo "Error deleting record: " . $conn->error;
}
代码解释:
- $sql - SQL查询,将ID为1的客户记录从“customers”表中删除。
- query() - 将SQL查询发送到数据库。
- ===TRUE - 确定SQL查询是否成功。
总结:本文提供了使用MySQLi扩展连接到MySQL数据库的说明,以及如何执行SQL查询、插入、更新和删除数据的示例。在实际应用中,您可能还需要考虑安全性和性能问题。
