从sqltrigg调用Python脚本

2024-05-23 19:37:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下场景:用户可以登录并更新某些表,每当该表被更新时,我想调用一个Python脚本,该脚本将查询同一数据库中的其他信息(joins),然后使用Django的电子邮件系统向该组(同一角色)中的所有用户发送该信息。在

我当前的方法是在SQLite3中创建一个用户定义的函数,然后创建一个触发器来调用该函数(它链接到一个Python文件)。SQLite有可能吗?在

Django应用程序、SQLite和Python。在

import sqlite3

def email_materials_submittal(project_id):
    print(project_id)


con = sqlite3.connect('../db.sqlite3')
con.create_function("FUNC_EMS", 1, email_materials_submittal)
con.commit()
cur = con.cursor()
cur.execute("CREATE TRIGGER TRIG_EMS AFTER INSERT ON core_level BEGIN SELECT FUNC_EMS(NEW.project_id); END;")
con.commit()
con.close()

我希望SQL在新行插入某个表时调用外部Python脚本。尝试了上面的代码,但是SQLite抛出错误:没有这样的函数:FUNC\u EMS


Tags: django函数用户project脚本信息idsqlite