对触发器的了解

 

触发器:

       和存储过程比较

1.       共同点:

针对表的操作(sql语句集合)

2.       区别点

不需要调用:

触发器在当前版本里不太稳定,不建议在有重要数据的数据库里使用

约束:

        目的:保证数据库的安全(独立性、共享性)排除冗余性

        域完整性约束(列):数据类型、格式、值域范围(enum\,set)、是否为空、主键、自动增长等

        实体完整性约束(行):

        用户自定义约束:例如年龄 int ()不能大于100岁

        参照完整性约束:外键

 

 

1.       创建触发器,

语法:

       Create procedure 名称(参数)

       Begin

              流程控制语句

              Sql语句集合

       End

       Create trigger 名称  触发时间(after\before)触发事件(insert、upfate、delete) on 表名 for  each row

Begin

Sql语句集合

End

练习1:对t1创建触发器。执行insert语句后,将用户变量str赋值“working“;

练习2:对t1创建触发器,删除数据后,将t2里对应的记录同步删除

Create trigger t1_delete after delete on t1 for each row

Delete from t2 where s2=old.s1;

第二部:激活触发器

Delete from t1;

第三部:验证结果

Slect * from t2;

练习3、创建表t3(s3 char(8)),该字段对记录的要求为,必须以‘a‘为结束

 

 

删除触发器

Show triggers;

Drop triggers 名

 

练习4,、

t1(s1 int)

t2(s2 int)

记录:30,60,90

当t1表里修改数据后小于60,则在t2表奖对应记录改为0

在t1表创建触发器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值