【发布时间】:2019-01-12 21:55:48
【问题描述】:
我有以下语句,它接受一个值数组并将它们存储在我的 MySQL RDS 中:
INSERT INTO items (item_id, item_name, item_description) VALUES ?
我将它与不提供转义机制来防止注入的 AWS Appsync 一起使用,因此我想在我的 RDS 中使用存储过程来防止injection。
该语句将用于创建多个项目,因此将传入一个值数组。
如何创建一个存储过程来将多个值插入一个表中?我在下面的示例中提到了带有单个参数的 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
【问题讨论】:
标签: mysql sql stored-procedures amazon-rds