admin 管理员组

文章数量: 887016

MYSQL 视图,触发器,存储过程,函数,事务

1.视图

**视图:**是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据

视图有如下特点;

  1. 视图的列可以来自不同的表,是表的抽象和逻辑意义上建立的新关系。
  2. 视图是由基本表(实表)产生的表(虚表)。
  3. 视图的建立和删除不影响基本表。
  4. 对视图内容的更新(添加、删除和修改)直接影响基本表。
  5. 当视图来自多个基本表时,不允许添加,修改和删除数据。

1.创建视图

 `create` `view` `视图名称  ``as` `sql 查询语句  `

2.使用视图

 `select` `* ``from` `视图名称;`

3.更新视图

 `alter` `view` `视图名称 ``AS` `SQL语句`
  1. 删除视图
 `drop` `view` `ren_view;`

2.触发器-trigger

触发器:监视某种情况,并触发某种操作。

触发器创建语法四要素:1.监视地点(table)

2.监视事件(insert/update/delete)

3.触发时间(after/before)

4.触发事件(insert/update/delete)

1.创建触发器语法

 `create` `trigger` `triggerName  ``after``/before  ``insert``/``update``/``delete``     ``on` `表名 ``for` `each row #这句话是固定的`` ``begin``     ``#需要执行的sql语句`` ``end``注意1:``after``/before: 只能选一个 ,``after` `表示 后置触发, before 表示前置触发``注意2:``insert``/``update``/``delete``:只能选一个`

创建两张表

#商品表create table goods( id int primary key auto_increment, name varchar(20), num int);#订单表create table order_table( oid int primary key auto_increment, gid int, much int);

添加3条商品数据

 `insert` `into` `goods(``name``,num

本文标签: mysql 视图 触发器 存储过程 函数 事务