新手上路教程4_其他-视图-触发器

1. 视图

1. 含义

  1. 本身 是一个虚拟表,它的数据来自于表,通过执行动态生成
    1. 好处
    • 简化sql语句
    • 提高了sql 的重用性
    • 保护基表的数据,提高了安全性

2. 创建

create view 视图名
as
查询语句;

3. 修改

  1. 方式一:

    create or replace view 视图名
    as
    查询语句;
    
  2. 方式二

alter view 视图名
as
查询语句

4. 删除

drop view 视图1,视图2...;

5. 查看

desc 视图名;
show create view 视图名;

6. 使用

  1. 插入
    1. insert
  2. 修改
    1. update
  3. 删除
    1. delete
  4. 查看
    1. select

7. 注意:

  1. 视图一般用于查询的,而不是更新的,所以具备以下的特点的视图都不容许更新
    1. 包含分组函数、group by、distinct、having、union、
    2. join
    3. 常量视图
    4. where后的子查询用到了from中的表
    5. 用到了不可更新的视图

8. 视图和表的对比

关键字是否占用物理空间使用
视图view占用较小,只保存sql逻辑一般用于查询
table保存实际的数据增删改查

触发器

  1. 如果你想要某条语句(或者某些语句) 在事件发生时自动执行。

创建触发器

  1. 需要给出4条信息

    1. 唯一的触发器名(是每个表唯一)
    2. 触发器关联的表
    3. 触发器应该相应的活动(DELETE , INSERT 或 UPDATE);
    4. 触发器何时执行(处理之前或之后)
    create trigger newproduct after insert on products 
    for each row select 'Product added';
    执行上面这个,就是对每个成功插入都是显示 product added信息
    

    每个表最多支持6个出发器,增删改 的前后

    单一触发器不能与多个事件或多个表关联,所有你应该使用两个触发器去满足你的条件

  2. 触发器的失败 : 如果before 触发器失败,则mysql 将不执行请求的操作,此外 ,如果before 触发器 或 语句本身 失败,mysql 将不执行 after 触发器

  3. 删除触发器

    drop trigger netproduct;
    
    

    触发器不能更新和覆盖,,只能删除掉,然后重新创建

  4. 使用触发器

create trigger neworder after insert on orders
for each row select new.order_num;


此代码 创建一个名为neworder的触发器,他按照after insert on orders 执行,在插入一个新订单到orders表时,mysql申城一个新订单号并保存到order_num中。

管理实务处理

  1. 事务处理,可以用来维护数据库的完整性,他可以保证成批的mysql操作要么完全执行,要么完全不执行

  2. 关于事务处理 : 有 几个术语:

    1. 事务 : 指一组sql语句
    2. 回退 : 撤销执行sql语句的过程
    3. 提交 : 将未存储的sql语句 写入数据库表
    4. 保留点 : 指事务处理中设置的临时占位符,你可以对它发布回退(与回退事务不同)
  3. 控制事务处理

  4. start transaction 开始

  5. rollback 回退

  6. commit 提交

  7. savepoint delete1; 唯一名字保留点

  8. rollback to delete1 ; 返回保留点

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ds_store_exp-master是一种用于分析和利用.DS_Store文件的工具包。.DS_Store是Mac OS系统在文件夹中自动生成的隐藏文件,用于存储特定文件夹的自定义视图选项和元数据信息。ds_store_exp-master提供了一些功能,使用户能够查看和分析.DS_Store文件。 使用ds_store_exp-master的第一步是安装Python。在确保已经安装了python之后,可以从GitHub上下载ds_store_exp-master的源代码。然后,可以在命令行中导航到下载的文件所在的目录,并使用命令"python ds_store_exp.py"运行。 当程序运行后,用户会看到一个简单的命令行菜单,其中包含一些选项供用户选择。其中一个选项是"Extraction",允许用户从.DS_Store文件中提取有关文件夹和文件的信息。另一个选项是"Analysis",允许用户分析.DS_Store文件中的各种字段和标志位。用户还可以选择在指定的文件夹中创建自己的.DS_Store文件。 在提取信息或分析.DS_Store文件时,用户需要提供.DS_Store文件的路径。可以通过将.DS_Store文件拖放到命令行终端中,或手动输入.DS_Store文件的路径来完成。 使用ds_store_exp-master,您可以深入了解.DS_Store文件的内容,包括文件和文件夹的自定义视图选项、标签、图标位置等。这对于研究和理解.DS_Store文件的作用和功能非常有用。 总而言之,ds_store_exp-master是一个功能强大的工具包,可用于分析和利用.DS_Store文件。通过提供丰富的选项和功能,使用户能够深入了解.DS_Store文件的内容和功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值