Computer >> Máy Tính >  >> Lập trình >> MySQL

Thực hiện truy vấn DELETE trong thủ tục lưu trữ MySQL

Bạn có thể sử dụng thủ tục được lưu trữ và có thể chuyển giá trị qua tham số. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable1464
   -> (
   -> Id int,
   -> FirstName varchar(20)
   -> );
Query OK, 0 rows affected (0.51 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable1464 values(101,'Chris Brown');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable1464 values(102,'John Doe');
Query OK, 1 row affected (0.09 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select * from DemoTable1464;

Điều này sẽ tạo ra kết quả sau -

+------+-------------+
| Id   | FirstName   |
+------+-------------+
|  101 | Chris Brown |
|  102 | John Doe    |
+------+-------------+
2 rows in set (0.00 sec)

Đây là truy vấn để triển khai truy vấn xóa trong thủ tục được lưu trữ -

mysql> DELIMITER //
mysql> CREATE PROCEDURE delete_demo(IN local_Id int, IN local_Name varchar(20))
   -> BEGIN
   ->    delete from DemoTable1464
   ->    where Id=local_Id and
   ->      FirstName=local_Name;
   -> END //
Query OK, 0 rows affected (0.24 sec)
mysql> DELIMITER ;

Bây giờ bạn có thể gọi thủ tục đã lưu trữ bằng lệnh CALL -

mysql> call delete_demo(102,'John Doe');
Query OK, 1 row affected, 1 warning (0.11 sec)

Hãy để chúng tôi kiểm tra các bản ghi bảng một lần nữa -

mysql> select * from DemoTable1464;

Điều này sẽ tạo ra kết quả sau -

+------+-------------+
| Id   | FirstName   |
+------+-------------+
|  101 | Chris Brown |
+------+-------------+
1 row in set (0.00 sec)