У меня есть следующий оператор, который принимает массив значений и сохраняет их в моем MySQL RDS:
INSERT INTO items (item_id, item_name, item_description) VALUES ?
Я использую это с AWS Appsync, который не предоставляет механизм экранирования для предотвращения инъекции, поэтому я хотел бы использовать хранимую процедуру в моей RDS для защиты от инъекции .
Этот оператор будет использоваться для создания нескольких элементов, поэтому в него будет передан массив значений.
Как я могу создать хранимую процедуру для вставки нескольких значений в таблицу? Я был отослан в следующем примере для оператора select с одним аргументом, но я не уверен, как применить это к более сложному случаю с несколькими аргументами, как в моем приведенном выше утверждении.
CREATE PROCEDURE listPets (IN type_param VARCHAR(200))
BEGIN
PREPARE stmt FROM 'SELECT * FROM Pets where type=?';
SET @type = type_param;
EXECUTE stmt USING @type;
DEALLOCATE PREPARE stmt;
END