mysql - 评估 MySQL 存储过程中的字符串

标签 mysql stored-procedures

我有一个存储过程,我想将一个字符串传递给它,以便在查询中进行评估。 我将根据现有的查询参数在 php 中构建一个字符串。 因此,我的字符串可能是 col1 = val1col1 = val1 AND col2 = val2 AND col3 = val3 等。 然后在我的存储过程中,我会做这样的事情: SET @s = CONCAT('SELECT * from tablename WHERE ' , string); 从@s 准备 stmt; 执行 stmt; 我尝试了一些不同的方法来做到这一点,但没有成功。 这可能吗? 谢谢。

最佳答案

您的代码有效,但您可能有错误。 尝试通过替换来调试它 从@s 准备 stmt;执行指令;

选择@s;

然后通过运行它来确保输出有效,这可能是您构建的@s 不正确。

关于mysql - 评估 MySQL 存储过程中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1881597/

相关文章:

mysql - 使用 where 子句合并 2 个 sql 语句

mysql - 从 mysql 本身确定 mysql 版本

php - 当表名存储在变量中时,如何加载数据?

asp.net - 如何更改数据或将数据添加到数据重复器并使其显示在 ASP.NET 中

sql - oracle pl/sql 结果成一个字符串

Java:将数组发送到 PL-SQL 函数

mysql自增变量使用案例

mysql - 在 Mysql 的 If 中使用 Sum

database - 存储过程删除查询

sql - 如何使用 SQL Server 2008 基于表名搜索来查找存储过程的名称?