zoukankan      html  css  js  c++  java
  • 作用于表的触发器vs作用于数据库的触发器(包含SQL语言与触发器个别相关知识)

    首先,百度一下SQL触发器有多少种

    (来自百度百科:https://baike.baidu.com/item/SQL%E8%A7%A6%E5%8F%91%E5%99%A8#3

    然后有关于缩写的SQL语言一共有四种

    (来源:https://www.cnblogs.com/fan-yuan/p/7879353.html

    而在逐个查找定义的时候发现实际上有五种

    ps.关于TCL的解释:(Tool Command Language)工具命令语言,一种脚本语言。 由John Ousterhout创建。 TCL很好学,功能很强大。TCL经常被用于快速原型开发,脚本编程,GUI和测试等方面。

    (来自百度百科:https://baike.baidu.com/item/TCL%E8%AF%AD%E8%A8%80/8377624?fr=aladdin

    咳、话题扯远了

    那么,简而言之,SQL触发器主要有以下:

    DML(Data Manipulation Language)数据操纵语言,针对表数据(insert,update,delete)

    DDL(Data Definition Language)数据定义语言,针对表结构(drop_table,alter_table,create_table)

    DCL(Data Control Language)数据控制语言,针对权限(grant,deny,revoke)

    而我们标题提到的就是DDL和DML了

    DDL语法结构:

    create trigger trigger_name

    on database

    for drop_table | alter_table | create_table

    as

    [print  | SQL语句块]

    本人实例:

    触发语句:

    ps.这个例子的print语句设计出错,实际上只能约束修改或删除数据库,涉及到数据库内数据须用到DML触发器。

    DML语法结构:

    create trigger trigger_name

    on table_name

    for insert | update | delate

    as

    [print  | SQL语句块]

    总结:DDL比DML的约束范围更加大,限制了整个数据库的操作,而DML仅局限于某个表上的操作。

  • 相关阅读:
    awk
    django教材
    saltstack的安装过程
    OPENSTACK学习笔记(1)
    5G核心网架构
    内存采集
    分析CPU文件
    环境管理系统
    属性的两种定义方式
    Python 面向对象(初级篇)
  • 原文地址:https://www.cnblogs.com/donelyorjune/p/11109283.html
Copyright © 2011-2022 走看看