2 回答

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超4個(gè)贊
一種方法是在數(shù)據(jù)庫(kù)中最后更新的行上保留一個(gè)計(jì)數(shù)器,然后您需要在短時(shí)間內(nèi)通過 python 輪詢(檢查)數(shù)據(jù)庫(kù)以獲取新記錄。
如果計(jì)數(shù)器中的值增加,那么您可以使用該subprocess
模塊調(diào)用另一個(gè) Python 腳本。

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個(gè)贊
可以從 MySql 觸發(fā)器執(zhí)行外部腳本,但我從未使用過它,也不知道這樣的事情的含義。
MySql 提供了一種實(shí)現(xiàn)您自己的函數(shù)的方法,它稱為User Defined Functions。有了這個(gè),您可以定義自己的函數(shù)并從 MySql 事件中調(diào)用它們。您需要按照 MySql 提供的接口在 C 程序中編寫自己的邏輯。
幸運(yùn)的是,有人已經(jīng)做了一個(gè)庫(kù)來從 MySql 調(diào)用外部程序:LIB_MYSQLUDF_SYS。安裝后,以下觸發(fā)器應(yīng)該可以工作:
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;
添加回答
舉報(bào)