将参数传递给MySQL脚本

我有一个名为的MySQL脚本文件query1.sql,其中包含:

select * FROM $(tblName) LIMIT 10;

我在MySQL控制台中,如何将参数传递给脚本?这不会转发变量:

mysql> \. query1.sql -v tblName=Users

回答:

您可以使用用户变量来实现您描述的行为。在将变量用作模式标识符而不是数据值时,必须使用准备好的语句,以便可以动态组成查询。

query1.sql

SET @query = CONCAT('Select * FROM ', @tblName, ' LIMIT 10');

PREPARE stmt FROM @query;

EXECUTE stmt;

DEALLOCATE PREPARE stmt;

调用为

mysql> SET @tblName = 'Users'; \. query1.sql

以上是 将参数传递给MySQL脚本 的全部内容, 来源链接: utcz.com/qa/418611.html

回到顶部