mysql - 当前SQL语句是否有MySQL变量?

标签 mysql triggers

我想在 MySQL 中创建一个触发器,它可以过滤并记录 SQL 语句(如所有更新),并将 SQL 语句写入另一个表 (VARCHAR) 中的列。 MySQL中有没有提供当前SQL语句字符串的变量或函数?

最佳答案

问:MySQL中有没有提供当前SQL语句字符串的变量或函数?

答:不,没有变量或函数(或任何内置机制)允许 MySQL TRIGGER 的主体检索导致触发器被触发的语句(当前正在执行的语句)的 SQL 文本。

触发器正文中的 SHOW FULL PROCESSLIST 也不会得到它;返回中显示的 SQL 将显示获取进程列表的语句。 (如果我们想使用 SHOW FULL PROCESSLIST 来获取 SQL,则必须来自单独的 session 。并且没有内置机制可以从触发器的主体。

<小时/>

关于mysql - 当前SQL语句是否有MySQL变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48713904/

相关文章:

sql - SQL Server中检测客户端断开连接

php - MySQL Join - 引用三个以上的表并获取与主表匹配的值

php - MySQL 查询按特定结果/行在另一个表中的投票数对结果进行排序

mysql - 是否可以创建触发器以将值复制到另一行(在同一个表中)的同一字段中?

php - 插入触发器错误后的MySQL PHP游戏

sql - 错误 : query has no destination for result data

php - whmcs 显示每个组的活跃产品

PHP 使用复选框删除多行

mysql - 计算表的行数,同时检查值是否为 NULL 并按另一列的值对结果进行分组

mysql - 这个防止空日期的 MySQL 触发器有什么问题?