python - 如果数据库(如 MySQL)中的任何数据更新,是否可以触发脚本或程序?
问题描述
它不必完全是数据库内的触发器。我只想知道我应该如何设计它,以便在 MySQL 或 SQL 服务器内部进行更改时,可以触发一些脚本。
解决方案
可以从 MySql 触发器执行外部脚本,但我从未使用过它,也不知道这样的事情的含义。
MySql 提供了一种方法来实现你自己的函数,它被称为用户定义函数。有了这个,您可以定义自己的函数并从 MySql 事件中调用它们。您需要按照MySql提供的接口在C程序中编写自己的逻辑。
幸运的是,有人已经做了一个库来从 MySql 调用外部程序:LIB_MYSQLUDF_SYS。安装后,以下触发器应该可以工作:
CREATE TRIGGER Test_Trigger
AFTER INSERT ON MyTable
FOR EACH ROW
BEGIN
DECLARE cmd CHAR(255);
DECLARE result int(10);
SET cmd=CONCAT('/YOUR_SCRIPT');
SET result = sys_exec(cmd);
END;
推荐阅读
- firebase - 我收到 Unhandled Promise Rejection 错误和一些数据结构建议
- javascript - 无法让 vanilla JS onreadystatechange 函数/readyState 4 工作
- linux - 如何将 .net 核心 Web API 作为 Linux 守护进程运行
- php - 将帖子中的自定义元框更改为页面
- python - Python 中的 Hot Deck 插补
- javascript - 通过将参数包装在函数中来延迟评估?
- dart - 将方法签名与模拟类中的未知参数匹配
- jquery - 在jQuery中增加字符串日期
- actionscript-3 - adobe animate 虚拟相机无法固定相机
- r - ggplot facet_wrap 仅在顶部和左侧带有标签