Mysql xóa mục
Câu lệnh DELETE của MySQL được sử dụng để xóa các bản ghi khỏi bảng MySQL không còn cần thiết trong cơ sở dữ liệu. Truy vấn này trong MySQL xóa toàn bộ hàng khỏi bảng và tạo ra số lượng hàng đã xóa. Nó cũng cho phép chúng tôi xóa nhiều bản ghi khỏi bảng trong một truy vấn, điều này có lợi khi xóa số lượng lớn bản ghi khỏi bảng. Bằng cách sử dụng câu lệnh xóa, chúng ta cũng có thể xóa dữ liệu dựa trên các điều kiện Show
Khi chúng tôi xóa bản ghi bằng truy vấn này, chúng tôi không thể khôi phục nó. Do đó, trước khi xóa bất kỳ bản ghi nào khỏi bảng, bạn nên tạo bản sao lưu cơ sở dữ liệu của mình. Các bản sao lưu cơ sở dữ liệu cho phép chúng tôi khôi phục dữ liệu bất cứ khi nào chúng tôi cần trong tương lai cú pháp Sau đây là cú pháp minh họa cách sử dụng câu lệnh DELETE Trong câu lệnh trên, trước tiên chúng ta phải chỉ định tên bảng mà chúng ta muốn xóa dữ liệu. Thứ hai, chúng ta phải chỉ định điều kiện để xóa các bản ghi trong mệnh đề WHERE, đây là tùy chọn. Nếu chúng ta bỏ qua mệnh đề WHERE trong câu lệnh, truy vấn này sẽ xóa toàn bộ bản ghi khỏi bảng cơ sở dữ liệu Nếu chúng ta muốn xóa các bản ghi khỏi nhiều bảng bằng một truy vấn DELETE, chúng ta phải thêm mệnh đề THAM GIA với câu lệnh DELETE Nếu chúng ta muốn xóa tất cả các bản ghi khỏi một bảng mà không biết số hàng đã xóa, chúng ta phải sử dụng câu lệnh TRUNCATE TABLE để có hiệu suất tốt hơn Hãy cho chúng tôi hiểu cách câu lệnh DELETE hoạt động trong MySQL thông qua các ví dụ khác nhau Các ví dụ về câu lệnh DELETE của MySQLỞ đây, chúng ta sẽ sử dụng bảng "Nhân viên" và "Thanh toán" để trình diễn câu lệnh DELETE. Giả sử các bảng Nhân viên và Thanh toán chứa dữ liệu sau Nếu chúng ta muốn xóa một nhân viên có emp_id là 107, chúng ta nên sử dụng câu lệnh DELETE với mệnh đề WHERE. Xem truy vấn bên dưới Sau khi thực hiện câu truy vấn sẽ trả về kết quả như hình bên dưới. Sau khi bản ghi bị xóa, hãy xác minh bảng bằng cách sử dụng câu lệnh CHỌN Nếu chúng ta muốn xóa tất cả các bản ghi khỏi bảng thì không cần sử dụng mệnh đề WHERE với câu lệnh DELETE. Xem đoạn mã dưới đây và đầu ra Ở kết quả trên, chúng ta có thể thấy rằng sau khi xóa tất cả các hàng, bảng Nhân viên sẽ trống. Điều đó có nghĩa là không có bản ghi nào trong bảng đã chọn Mệnh đề DELETE và GIỚI HẠN của MySQLMệnh đề Giới hạn MySQL được sử dụng để hạn chế số lượng hàng trả về từ tập kết quả, thay vì tìm nạp toàn bộ bản ghi trong bảng. Đôi khi chúng ta muốn giới hạn số hàng bị xóa khỏi bảng; Cần lưu ý rằng thứ tự các hàng trong bảng MySQL không được chỉ định. Do đó, chúng ta nên luôn sử dụng mệnh đề ORDER BY trong khi sử dụng mệnh đề LIMIT Ví dụ: trước tiên, truy vấn sau sắp xếp nhân viên theo tên của họ theo thứ tự bảng chữ cái và xóa ba nhân viên đầu tiên khỏi bảng Nó sẽ cho đầu ra dưới đây Mệnh đề XÓA và THAM GIA của MySQLMệnh đề THAM GIA được sử dụng để thêm hai hoặc nhiều bảng trong MySQL. Chúng tôi sẽ thêm mệnh đề THAM GIA với câu lệnh DELETE bất cứ khi nào chúng tôi muốn xóa các bản ghi khỏi nhiều bảng trong một truy vấn. Xem truy vấn bên dưới Trước hết, bạn phải có một số dữ liệu trong lược đồ cơ sở dữ liệu của mình để thực hiện các truy vấn trên đó. Hãy tạo một bảng có tên 'sinh viên' trong cơ sở dữ liệu 'dữ liệu' bằng cách sử dụng truy vấn CREATE trong MYSQL Workbench hoặc Máy khách dòng lệnh. Bảng 'sinh viên' có sáu cột. 'id', 'firstname', 'lastname', 'email', 'reg_date' và 'class'. Chúng tôi sẽ thêm các giá trị vào các cột của nó bằng cách sử dụng chế độ xem lưới như bên dưới và nhấp vào nút 'Áp dụng' để lưu các thay đổi. Bây giờ bạn có thể thực hiện bất kỳ cập nhật nào trên các bản ghi này Xóa qua Giao diện WorkbenchMột phương pháp rất đơn giản để xóa hàng/các hàng khỏi bảng MySQL là thông qua chế độ xem lưới bàn làm việc vì chúng ta có một bảng 'sinh viên' với mười bản ghi trong đó. Để xóa một hàng khỏi bảng, bạn phải chọn hàng cụ thể và nhấn biểu tượng xóa hàng từ cửa sổ lưới vì chúng tôi đã chọn hàng thứ 10 và nhấn biểu tượng được đánh dấu bên dưới Sau khi nhấn vào biểu tượng xóa, bạn có thể thấy rằng hàng thứ 10 và bản ghi của nó đã bị xóa khỏi bảng 'sinh viên'. Muốn xóa nhiều hàng phải chọn liên tiếp nhiều hàng Xóa một hàng qua dòng lệnhMột phương pháp đơn giản khác để xóa một hàng khỏi lược đồ MySQL là thông qua ứng dụng khách dòng lệnh. Mở ứng dụng khách dòng lệnh MySQL trong 'MySql' mới được cài đặt thông qua nút 'cửa sổ'. Trước hết, kiểm tra và hiển thị tất cả các bản ghi của bảng ‘student’ bằng cách sử dụng lệnh ‘SELECT’ như bên dưới >> CHỌN * TỪ dữ liệu. sinh viên ĐẶT HÀNG THEO id; Ví dụ 01. Sử dụng một điều kiện trong mệnh đề WHERE >> XÓA KHỎI dữ liệu. sinh viên WHERE lastname=’Waleed’; Nó đã được xóa thành công vì nó hiển thị rằng 'Truy vấn OK, 1 hàng bị ảnh hưởng' Khi hiển thị tất cả các hàng của bảng 'sinh viên', chúng ta có thể thấy rằng bản ghi của hàng thứ 10 đã bị xóa khỏi bảng Sử dụng cùng một truy vấn 'XÓA' trong trình điều hướng của bàn làm việc để xóa một bản ghi như được hiển thị Ví dụ 02. Sử dụng nhiều hơn một điều kiện trong mệnh đề WHERE >> XÓA KHỎI dữ liệu. sinh viên WHERE lastname=’khursheed’ AND id > 7; Hàng thứ 9 đã được xóa thành công vì thông báo rằng 'Truy vấn OK, 1 hàng bị ảnh hưởng. ’ Khi kiểm tra, chúng tôi chỉ còn 8 hàng trong bảng. Hàng thứ 9 đã bị xóa khỏi bảng, như hình bên dưới Ví dụ 03. Sử dụng Điều kiện GIỚI HẠN trong Mệnh đề WHERE >> XÓA KHỎI dữ liệu. sinh viên WHERE lastname = 'Awan' ORDER BY id LIMIT 1; Sử dụng truy vấn 'CHỌN' để kiểm tra bảng đã cập nhật. Bạn có thể thấy rằng hàng thứ 2 không có trong bảng như hiển thị bên dưới và chúng tôi chỉ còn lại 7 hàng Xóa nhiều hàng qua dòng lệnhTrước tiên, hãy cập nhật bảng 'sinh viên' bằng cách thêm một số bản ghi vào bảng để chúng tôi có thể xóa nhiều hàng. Hãy hiển thị các bản ghi của một bảng có họ là 'Awan', sử dụng truy vấn 'CHỌN' với mệnh đề WHERE duy nhất. Truy vấn này sẽ chỉ hiển thị 4 hàng vì chúng tôi chỉ có 4 bản ghi cho cột ‘lastname = Awan’ >> CHỌN * TỪ dữ liệu. sinh viên WHERE họ = 'Awan'; Ví dụ 01. Sử dụng Điều kiện GIỚI HẠN trong Mệnh đề WHERE >> XÓA KHỎI dữ liệu. sinh viên WHERE lastname = 'Awan' ORDER BY id GIỚI HẠN 3; Hiển thị các bản ghi còn lại của bảng bằng truy vấn 'CHỌN'. Bạn sẽ thấy, chỉ còn lại 1 bản ghi cho 'lastname' có giá trị 'Awan' và ba hàng đã bị xóa Ví dụ 02. Sử dụng nhiều hơn một điều kiện trong mệnh đề WHERE >> XÓA KHỎI dữ liệu. sinh viên WHERE id > 2 AND id < 9; Chúng tôi chỉ còn 2 hàng trong bảng trong khi kiểm tra các bản ghi Ví dụ 03. Xóa tất cả các hàng >> XÓA KHỎI dữ liệu. sinh viên; Trong khi cố gắng hiển thị các bản ghi, bạn sẽ nhận được một tập hợp các bảng trống Phần kết luậnChúng tôi đã xem qua các cách khác nhau để xóa một hàng và nhiều hàng khỏi một bảng khi làm việc trong MySQL thông qua bàn làm việc và giao diện máy khách dòng lệnh Làm cách nào để xóa dữ liệu trong MySQL?Nếu bạn muốn xóa một bản ghi khỏi bất kỳ bảng MySQL 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
Lệnh DELETE trong MySQL là gì?DELETE là câu lệnh DML xóa các hàng khỏi bảng . Câu lệnh XÓA có thể bắt đầu bằng mệnh đề VỚI để xác định các biểu thức bảng chung có thể truy cập trong DELETE.
Làm cách nào để xóa tất cả dữ liệu khỏi bảng trong MySQL?TRUNCATE TABLE yourTableName. Bây giờ bạn có thể kiểm tra tất cả các bản ghi đã bị xóa khỏi bảng hay chưa
Làm cách nào để xóa tất cả hàng trong MySQL?Để xóa dữ liệu khỏi nhiều bảng bằng một câu lệnh DELETE duy nhất, bạn sử dụng câu lệnh DELETE JOIN sẽ được trình bày trong hướng dẫn tiếp theo. Để xóa tất cả các hàng trong một bảng mà không cần biết có bao nhiêu hàng đã xóa, bạn nên sử dụng câu lệnh TRUNCATE TABLE để có hiệu suất tốt hơn. |