MySQL——视图

视图就是自己创建的一张虚表,使人方便查询

视图的使用规则和限制条件

  • 和数据表一样,视图也必须拥有一个唯一不重复的名字(一般是在库的范围内)
  • 对于视图的创建是没有数量限制
  • 创建视图的时候,必须有对应的权限,权限一般由数据库管理员授予
  • 视图和视图之间是可以实现连表查询和嵌套查询的
  • order by 的排序语句可以在视图中使用,如果创建视图的查询语句中存在order by 针对视图查 询结果排除的语句将被覆盖
  • 视图中不可以使用索引、触发器、设置默认值

视图使用

  • CREATE VIEW 创建视图
  • SHOW CREATE VIEW 视图名 查看视图创建的语句
  • DROP VIEW 视图名 删除视图
  • 更新一个视图的数据,可以先使用DROP删除视图,然后使用create 创建视图,简化版使用 CREATE OR REPLACE VIEW 如视图存在就先删除,再创建,如果视图不存在则直接创建

导致视图更新数据失败的操作

一般是在创建视图的时候,使用了一些可能导致数据无法写入对应底层数据表的语句
  • group by having
  • 连表 JOIN子查询(select
  • UNION 联合查询
  • 聚合函数
  • distinct
  • 列之间的计算 concact() 计算总价的例子

查询库中的视图

select table_name from information_schema.TABLES where table_type='VIEW' and
TABLE_SCHEMA =' 库命 '

 存储过程

MySQL 对于存储过程的使用也叫作调用。调用的意思就是直接使用存储过程名称以及相关参数.
调用 CALL 存储过程名( @ 单个语句调用的名称);

创建

CREATE PROCEDURE 名字
BEGIN // 开始
SQL 语句 最好使用 as 对这个SQL语句命名,方便后期调用
END // 结束
DELIMITER // # 设置语句结尾为 //

删除

DROP PROCEDURE 名字

 查看存储过程的参数

SHOW CREATE PROCEDURE 名字

 查看指定库中的存储程序

show procedure status where db=' 数据库名 ';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值