如何在 SQLAlchemy 中定义触发器,存储过程

如题所述

使用 动态 SQL, 好像是可以处理。

1> CREATE procedure fpinput_proc
2> AS
3> BEGIN
4>
5> DECLARE @sql VARCHAR(MAX);
6> SET @sql =
7> 'CREATE TRIGGER AfterDeleteVIP '
8> + ' ON VIP '
9> + ' FOR DELETE '
10> + 'AS '
11> + 'BEGIN '
12> + ' DELETE FROM VB '
13> + ' WHERE '
14> + ' V_No IN (SELECT V_NO FROM deleted); '
15> + 'END; '
16>
17> EXECUTE (@sql);
18> END;
19> go

1> begin
2> exec fpinput_proc;
3> end
4> go

1> select
2> tri.name AS TriggerName
3> from
4> sys.triggers tri
5> go
TriggerName
------------------------------------------------------
AfterDeleteVIP

也就是把那一段 创建触发器的语句, 放到一个 @Sql 的变量中。
然后 EXECUTE (@sql);

那么在存储过程执行完毕后,触发器就创建了。
温馨提示:内容为网友见解,仅供参考
无其他回答

如何使用SQLAlchemy库写出防SQL注入的Raw SQL-WEB安全
1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和 双"-"进行转换等。2.永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。4.不要把机...

django如何后台运行(django运维)
废话不多说,第一步通过WinSCP软件把Django文件传到服务器上。 在服务器中安装Django需要的环境和我所需要的Python第三方库。 以上所有步骤完成后,还需要进行一步操作,这是我经历的一个 坑。 打开Django文件目录中的 settings.py,把 ALLOWED_HOSTS=[] 改为 ALLOWED_HOSTS=["*"] 。 在服务器中打开到 manage.py...

如果使用docker中的python模块?
使用 Docker 中的 Python 模块,例如 FastAPI 和 MySQL,构建一个简单的 REST API 的主要步骤如下。首先,了解 FastAPI 不需要特定的 SQL 数据库,但可以与任何关系型数据库兼容。为了使用 MySQL,我们通常会选择 SQLAlchemy 作为 ORM 库。在构建 MySQL 容器时,创建 `init.sql` 文件以执行初始数据操...

django如何将数据库与admin相连?
这些ModelForm的验证,是基于Articlemodel中定义的field转换而来的 3.模式二,在ModelForm中修改验证django怎么在admin里显示数据库的内容 操作方法:首先要运行pythonmanage.pycreatesuperuser命令来创建一个管理员账户。 然后在url中输入\/admin即可到达管理员登录页,登录之后会发现并没有数据库中要显示的项目,因为我们还没...

课程内容框架
4、数据库知识,范式,MySQL配置,命令,建库建表,数据的增删改查,约束,视图,存储过程,函数,触发器,事务,游标,PDBC,深入理解数据库管理系统通用知识及MySQL数据库的使用与管理。为Python后台开发打下坚实基础。 5、Linux安装配置,文件目录操作,VI命令,管理,用户与权限,环境配置,Docker,Shell编程Linux作为一个主流的服务...

python valueError:too many values unpack是怎么回事?
for key, value in ditc_a:各种google后发现了原因,是在http:\/\/stackoverflow.com\/questions\/20250901\/python-sql-alchemy-migrate-valueerror-too-many-values-to-unpack-when-migrat找到的答案,非常感谢stackoverflow的大神,就是在modle.py中定义数据表的时候使用了Boolean,当我把db.Boolean都换成了...

python培训需要多久?
【Python学习】内容具体如下:1、Python开发基础:Python基础语法、数据类型、字符编码等。2、Python高级编程和数据库开发:面向对象开发、Socket网络编程、线程等。3、前端开发:Html、CSS、JavaScript开发等。4、WEB框架开发:Django框架基础、Django框架进阶、BBS+Blog实战项目开发等。5、人工智能:机器学习、...

django如何后台运行(django运维)
1、djangosqlalchemy怎么用admin后台管理2、如何在服务器上部署Django项目并使其在后台一直运行3、请教一个django后台管理页面问题4、Django前台与后台交互问题5、django后台怎么执行threaddjangosqlalchemy怎么用admin后台管理 1.DjangoAdmin不适合最终用户使用 Djangoadmin是为管理员设计的,而不是给最终用户使用的.Djangoadmi...

怎么进django后台管理(django自带admin)
如果这个代码片段在URLConf中出现于管理URL之前,add_by_isbn视图将完全取代标准的管理视图。 按照这种方式,我们可以替换删除确认页、编辑页面或者管理界面的其它任何部分。 djangosqlalchemy怎么用admin后台管理 1.DjangoAdmin不适合最终用户使用 Djangoadmin是为管理员设计的,而不是给最终用户使用的.Djangoadmin的存在是为...

如何才能自学好python?
4、数据库知识,范式,MySQL配置,命令,建库建表,数据的增删改查,约束,视图,存储过程,函数,触发器,事务,游标,PDBC,深入理解数据库管理系统通用知识及MySQL数据库的使用与管理。为Python后台开发打下坚实基础。5、Linux安装配置,文件目录操作,VI命令,管理,用户与权限,环境配置,Docker,Shell...

相似回答