MySQLi - Truy vấn DELETE
Nếu bạn muốn xóa một bản ghi khỏi bất kỳ bảng MySQLi nào, thì bạn có thể sử dụng lệnh SQL DELETE FROM. Bạn có thể sử dụng lệnh này tại dấu nhắc mysql> cũng như trong bất kỳ tập lệnh nào như PHP.
Cú pháp
Đây là cú pháp SQL chung của lệnh DELETE để xóa dữ liệu khỏi bảng MySQLi -
DELETE FROM table_name [WHERE Clause]
Nếu mệnh đề WHERE không được chỉ định, thì tất cả các bản ghi sẽ bị xóa khỏi bảng MySQLi đã cho.
Bạn có thể chỉ định bất kỳ điều kiện nào bằng mệnh đề WHERE.
Bạn có thể xóa các bản ghi trong một bảng tại một thời điểm.
Mệnh đề WHERE rất hữu ích khi bạn muốn xóa các hàng đã chọn trong bảng.
Xóa dữ liệu khỏi Command Prompt
Thao tác này sẽ sử dụng lệnh SQL DELETE với mệnh đề WHERE để xóa dữ liệu đã chọn vào bảng hướng dẫn của MySQLi.
Thí dụ
Ví dụ sau sẽ xóa một bản ghi vào tutorial_inf có tên là johar.
root@host# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> DELETE FROM tutorials_inf where name = 'johar';
Query OK, 1 row affected (0.23 sec)
mysql>
Xóa dữ liệu bằng PHP Script
Bạn có thể sử dụng lệnh SQL DELETE có hoặc không có WHERE CLAUSE vào hàm PHP mysqli_query(). Hàm này sẽ thực thi lệnh SQL theo cách tương tự như nó được thực thi tại dấu nhắc mysql>.
Thí dụ
Hãy thử ví dụ sau để xóa bản ghi khỏi tutorial_inf có tên là althamas.
<?php
$dbhost = 'localhost:3306';
$dbuser = 'root';
$dbpass = '';
$dbname = 'TUTORIALS';
$conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);
if(! $conn ) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully<br>';
$sql = ' DELETE FROM tutorials_inf WHERE name = "althamas"';
if (mysqli_query($conn, $sql)) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
Đầu ra mẫu phải như thế này-
Connected successfully
Record deleted successfully