Sau đây là cú pháp để chèn các giá trị trong hai bảng với một thủ tục được lưu trữ -
DELIMITER // CREATE PROCEDURE yourProcedureName(anyVariableName int) BEGIN insert into yourTableName1(yourColumnName1) values(yourVariableName); insert into yourTableName2(yourColumnName2) values(yourVariableName); END //
Đầu tiên chúng ta hãy tạo một bảng -
mysql> create table DemoTable1 -> ( -> StudentScore int -> ); Query OK, 0 rows affected (0.58 sec)
Sau đây là bảng thứ hai -
mysql> create table DemoTable2 -> ( -> PlayerScore int -> ); Query OK, 0 rows affected (0.52 sec)
Đây là truy vấn để tạo một thủ tục được lưu trữ và chèn các giá trị vào hai bảng -
mysql> DELIMITER // mysql> CREATE PROCEDURE insert_proc(value int ) -> BEGIN -> insert into DemoTable1(StudentScore) values(value); -> insert into DemoTable2(PlayerScore) values(value); -> END -> // Query OK, 0 rows affected (0.16 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 insert_proc(89); Query OK, 1 row affected (0.29 sec)
Hiển thị tất cả các bản ghi từ cả hai bảng bằng cách sử dụng câu lệnh select -
mysql> select * from DemoTable1333; +--------------+ | StudentScore | +--------------+ | 89 | +--------------+ 1 row in set (0.00 sec) mysql> select * from DemoTable1334; +-------------+ | PlayerScore | +-------------+ | 89 | +-------------+ 1 row in set (0.00 sec)