Bạn có thể tạo một truy vấn CHÈN (vì câu lệnh cho phép chèn nhiều bản ghi) và chạy nó với câu lệnh đã chuẩn bị sẵn , ví dụ. -
SET @MenuIDs = '1,2,3';
SET @RoledID = 100;
SET @values = REPLACE(@MenuIDs, ',', CONCAT(', ', @RoledID, '),('));
SET @values = CONCAT('(', @values, ', ', @RoledID, ')'); -- This produces a string like this -> (1, 100),(2, 100),(3, 100)
SET @insert = CONCAT('INSERT INTO RolesMenus VALUES', @values); -- Build INSERT statement like this -> INSERT INTO RolesMenus VALUES(1, 100),(2, 100),(3, 100)
-- Execute INSERT statement
PREPARE stmt FROM @insert;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
Như bạn thấy, nó có thể được thực hiện mà không cần thủ tục lưu trữ.