在 MySQL 存储过程中构建动态 SQL
动态 SQL,在 MySQL 5.0.13 中引入,允许存储过程在运行时构造 SQL 语句.
如何在存储中构建和使用动态 SQL过程:
创建存储过程如下:
DELIMITER // CREATE PROCEDURE dynamic(IN tbl CHAR(64), IN col CHAR(64)) BEGIN SET @s = CONCAT('SELECT ',col,' FROM ',tbl ); PREPARE stmt FROM @s; EXECUTE stmt; DEALLOCATE PREPARE stmt; END // DELIMITER ;
说明:
示例:
从指定的列中选择特定的列表:
CALL dynamic('employees', 'salary');
注意:
函数或触发器不支持动态 SQL。有关更多信息,请参阅 MySQL 文档。
以上是如何在 MySQL 存储过程中构建和使用动态 SQL?的详细内容。更多信息请关注PHP中文网其他相关文章!