存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的数据库对象。它允许用户将一系列的SQL语句组合成一个单一的命令来执行。MySQL中的INTO
关键字常用于将查询结果插入到新表或现有表中。
MySQL中的存储过程主要分为两类:
INTO
关键字将查询结果插入到新表中,实现数据的转换与迁移。以下是一个使用MySQL存储过程和INTO
关键字的示例,该示例将两个表的连接查询结果插入到新表中:
DELIMITER //
CREATE PROCEDURE InsertIntoNewTable()
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
RESIGNAL;
END;
START TRANSACTION;
INSERT INTO new_table (column1, column2, column3)
SELECT t1.column1, t2.column2, t1.column3
FROM table1 t1
INNER JOIN table2 t2 ON t1.id = t2.id;
COMMIT;
END //
DELIMITER ;
在这个示例中,我们创建了一个名为InsertIntoNewTable
的存储过程,该过程将table1
和table2
的连接查询结果插入到new_table
中。
GRANT
语句授予权限。领取专属 10元无门槛券
手把手带您无忧上云