在Web开发中,数据库交互是常见需求,而MySQL是广泛应用的关系型数据库。本文将从零开始介绍如何使用PHP连接MySQL数据库,并完成基本的数据库操作。
连接MySQL数据库时,需要准备数据库地址、用户名、密码和数据库名称。PHP内置的mysqli扩展提供了简洁的方式进行连接操作。
$servername = "localhost"; // 数据库地址
$username = "root"; // 用户名
$password = "password"; // 密码
$dbname = "mydatabase"; // 数据库名
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功!";
代码中使用mysqli类创建连接对象,通过检测connect_error属性确认连接状态,连接成功后输出提示信息。
连接数据库后,可以执行SQL语句进行数据表的创建和数据插入操作。以下示例展示如何创建一个名为users的表,并插入一条用户数据。
// 创建表的SQL语句
$sql = "CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(30) NOT NULL,
email VARCHAR(50) NOT NULL
)";
// 执行创建表操作
if ($conn->query($sql) === TRUE) {
echo "表创建成功!";
} else {
echo "创建表时出错:" . $conn->error;
}
// 插入记录的SQL语句
$sql = "INSERT INTO users (username, email) VALUES ('John', '[email protected]')";
// 执行插入操作
if ($conn->query($sql) === TRUE) {
echo "插入记录成功!";
} else {
echo "插入记录时出错:" . $conn->error;
}
使用query方法执行SQL语句,成功时返回true,失败则可通过error属性查看错误信息。
除了写入数据,查询数据库信息也是常见需求。下面的示例展示如何查询users表中的所有数据,并逐条输出字段内容。
// 查询所有记录的SQL语句
$sql = "SELECT * FROM users";
// 执行查询并获取结果集
$result = $conn->query($sql);
// 判断是否有结果返回
if ($result->num_rows > 0) {
// 遍历结果集
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"] . " - username: " . $row["username"] . " - email: " . $row["email"] . "<br>";
}
} else {
echo "没有记录";
}
通过num_rows属性确认查询结果条数,fetch_assoc方法获取每条记录的关联数组,便于逐字段输出。
数据库操作结束后,应关闭连接以释放资源,使用mysqli对象的close方法即可实现。
// 关闭数据库连接
$conn->close();
本文介绍了PHP连接MySQL数据库的完整流程,包括连接数据库、执行SQL语句创建表和插入数据、查询数据以及关闭连接。通过示例代码,您可以轻松掌握PHP与MySQL交互的基础技巧,为后续开发打下坚实基础。