如何在PHP中使用MySQL函数来操作数据库?
发布时间:2023-06-18 20:37:25
在PHP中,可以使用MySQL函数来操作数据库。这包括连接数据库、查询、插入、删除、更新等操作。
连接数据库
要连接MySQL数据库,可以使用PHP中的mysqli或PDO类。首先需要定义服务器名称、用户名、密码和数据库名称。
使用mysqli连接:
$servername = "localhost"; $username = "root"; $password = ""; $dbname = "mydatabase"; $con = mysqli_connect($servername, $username, $password, $dbname);
使用PDO连接:
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "mydatabase";
try {
$con = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// set the PDO error mode to exception
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
查询数据
使用查询语句可以从数据库中获取数据。对于查询语句,可以使用mysqli_query或PDO::query函数。
使用mysqli查询:
$sql = "SELECT id, name, email FROM users";
$result = mysqli_query($con, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
} else {
echo "0 results";
}
使用PDO查询:
$sql = "SELECT id, name, email FROM users";
$result = $con->query($sql);
if ($result->rowCount() > 0) {
// output data of each row
foreach($result as $row) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
} else {
echo "0 results";
}
插入数据
要插入数据,需要使用INSERT语句。对于插入语句,可以使用mysqli_query或PDO::exec函数。
使用mysqli插入:
$sql = "INSERT INTO users (name, email, password)
VALUES ('John Doe', 'john@example.com', 'password')";
if (mysqli_query($con, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($con);
}
使用PDO插入:
$sql = "INSERT INTO users (name, email, password)
VALUES ('John Doe', 'john@example.com', 'password')";
try {
// use exec() because no results are returned
$con->exec($sql);
echo "New record created successfully";
} catch(PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
更新数据
要更新数据,需要使用UPDATE语句。对于更新语句,可以使用mysqli_query或PDO::exec函数。
使用mysqli更新:
$sql = "UPDATE users SET password='new_password' WHERE id=1";
if (mysqli_query($con, $sql)) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . mysqli_error($con);
}
使用PDO更新:
$sql = "UPDATE users SET password='new_password' WHERE id=1";
try {
// Prepare statement
$stmt = $con->prepare($sql);
// execute the query
$stmt->execute();
echo "Record updated successfully";
} catch(PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
删除数据
要删除数据,需要使用DELETE语句。对于删除语句,可以使用mysqli_query或PDO::exec函数。
使用mysqli删除:
$sql = "DELETE FROM users WHERE id=1";
if (mysqli_query($con, $sql)) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . mysqli_error($con);
}
使用PDO删除:
$sql = "DELETE FROM users WHERE id=1";
try {
// Prepare statement
$stmt = $con->prepare($sql);
// execute the query
$stmt->execute();
echo "Record deleted successfully";
} catch(PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
结束连接
完成操作后,应该关闭MySQL连接,释放资源。
使用mysqli关闭连接:
mysqli_close($con);
使用PDO关闭连接:
$con = null;
通过使用MySQL函数,可以在PHP中轻松地连接、查询、插入、删除和更新MySQL数据库。这使得开发Web应用程序更加容易和高效。
