MARIADB
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Tìm hiểu lệnh DELETE trong MariaDB

Lệnh DELETE dùng để xóa các dòng dữ liệu trong bảng. Sau khi xóa, số lượng dòng bị xóa có thể được kiểm tra thông qua hàm ROW_COUNT().

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.
  • Mệnh đề WHERE: Được dùng để chỉ định các dòng sẽ bị xóa. Nếu không có mệnh đề này, tất cả các dòng trong bảng sẽ bị xóa.
  • Mệnh đề LIMIT: Dùng để giới hạn số lượng dòng bị xóa trong một lần thực thi.

Khi sử dụng DELETE để xóa nhiều dòng, chỉ những dòng thỏa điều kiện mới bị xóa. Lưu ý rằng các mệnh đề LIMIT và WHERE không được phép sử dụng chung trong một số trường hợp đặc biệt.

Một điều cần lưu ý là lệnh DELETE không cho phép xóa dữ liệu từ một bảng và sau đó thực hiện thao tác SELECT từ cùng một bảng trong cùng một truy vấn con.

Cú pháp lệnh DELETE trong MariaDB

DELETE FROM table_name [WHERE …]  

Bạn có thể thực hiện lệnh này thông qua dòng lệnh hoặc sử dụng script PHP.

Bài viết này được đăng tại [free tuts .net]

Thực hiện lệnh DELETE trong dòng lệnh trong MariaDB

Ví dụ thực hiện qua dòng lệnh như sau:

root@host# mysql –u root –p password;  
Enter password:*******  
mysql> use PRODUCTS;  
Database changed  
mysql> DELETE FROM products_tbl WHERE product_id = 133;  

mysql> SELECT * FROM products_tbl WHERE product_id = '133';  
ERROR 1032 (HY000): Can't find record in 'products_tbl'  

Kết quả trả về cho biết rằng dòng dữ liệu có product_id = 133 đã bị xóa thành công.

Thực hiện lệnh DELETE trong PHP trong MariaDB

Dưới đây là ví dụ sử dụng PHP để thực thi lệnh DELETE:

<?php  
   $dbhost = 'localhost:3036';  
   $dbuser = 'root';  
   $dbpass = 'rootpassword';  
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);  

   if (! $conn ) {  
      die('Không thể kết nối: ' . mysql_error());  
   }  

   $sql = 'DELETE FROM products_tbl WHERE product_id = 261';  
   mysql_select_db('PRODUCTS');  
   $retval = mysql_query($sql, $conn);  

   if (! $retval ) {  
      die('Không thể xóa dữ liệu: ' . mysql_error());  
   }  

   echo "Dữ liệu đã được xóa thành công\n";  
   mysql_close($conn);  
?>  

Kết quả sau khi thực thi thành công

Nếu lệnh được thực hiện thành công, kết quả hiển thị:

mysql> Dữ liệu đã được xóa thành công  
mysql> SELECT * FROM products_tbl WHERE product_id = '261';  
ERROR 1032 (HY000): Can't find record in 'products_tbl'  

Kết quả báo lỗi "Can't find record" cho biết rằng dòng dữ liệu có product_id = 261 không còn tồn tại trong bảng.

Kết bài

Lệnh DELETE là một công cụ quan trọng trong quản lý dữ liệu của MariaDB, cho phép bạn xóa dữ liệu không cần thiết một cách dễ dàng. Kết hợp lệnh với mệnh đề WHERE giúp giới hạn chính xác các dòng cần xóa, tránh xóa nhầm dữ liệu quan trọng.

Đối với các dự án lớn, bạn nên sử dụng cẩn thận, đặc biệt khi xóa dữ liệu hàng loạt hoặc không sử dụng mệnh đề WHERE, để tránh mất mát thông tin không mong muốn.

Cùng chuyên mục:

Tìm hiểu câu lệnh UPDATE trong MariaDB

Tìm hiểu câu lệnh UPDATE trong MariaDB

Mệnh đề WHERE trong MariaDB

Mệnh đề WHERE trong MariaDB

Câu lệnh SELECT (Select Query) trong MariaDB

Câu lệnh SELECT (Select Query) trong MariaDB

Lệnh chèn dữ liệu (Insert Query) trong MariaDB

Lệnh chèn dữ liệu (Insert Query) trong MariaDB

Tìm hiểu xóa bảng trong MariaDB

Tìm hiểu xóa bảng trong MariaDB

Tạo bảng (Create Tables) trong MariaDB

Tạo bảng (Create Tables) trong MariaDB

Các loại dữ liệu (Data Types) trong MariaDB

Các loại dữ liệu (Data Types) trong MariaDB

Select Database trong MariaDB

Select Database trong MariaDB

Xóa cơ sở dữ liệu trong MariaDB

Xóa cơ sở dữ liệu trong MariaDB

Tạo cơ sở dữ liệu trong MariaDB

Tạo cơ sở dữ liệu trong MariaDB

Cách kết nối trong MariaDB

Cách kết nối trong MariaDB

Cú pháp PHP trong  MariaDB

Cú pháp PHP trong MariaDB

Hướng dẫn chi tiết quản trị MariaDB

Hướng dẫn chi tiết quản trị MariaDB

Hướng dẫn cài đặt MariaDB

Hướng dẫn cài đặt MariaDB

Top