dream

一个菜鸟程序员的成长历程

0%

数据库系统原理第十节

数据库系统原理第十节

数据库设计

数据查询

视图

什么是视图

  • 视图是一个对象,他是数据库提供给用户的以多种角度观察数据库中数据的一种重要机制
  • 视图不是数据库中真实的表,而是一张虚拟表,其自身并不存储数据

视图的优点

  • 集中分散数据
  • 简化查询语句
  • 重用SQL语句
  • 保护数据安全
  • 共享所需数据
  • 更改数据格式
创建视图

or replace 防止报错,存在替换,不存在创建
with check option 增删改查的时候检查视图条件

1
2
3
create or replace view view_name [(col_list)]
as select_statement
with check option
删除视图

drop view view_name

修改视图
1
2
3
alter view view_name [(col_list)]
as select_statement
with check option
查看视图定义
1
show create view view_name
更新视图数据
1
2
insert into table_name 
values(value1,...);
1
update table_name set col_name = 'value'
删除视图数据
1
delete from table_name where ...
查询视图数据

select

数据库编程

存储过程

存储过程 是一组为了完成某项特定功能的 SQL语句集

  • 可增强SQL语言的功能和灵活性
  • 良好的封装性
  • 高性能
  • 可减少网络流量
  • 可作为一种安全机制来确保数据库的安全性和数据的完整性
    其实质就是一段存储在数据库中的 代码
    它可以由声明式的sql语句和过程式sql语句组成

创建存储过程

DELIMITER $$ //用户定义的MYSQL 结束符

参数:in|out|inout 参数名 参数类型

1
2
3
4
5
DELIMITER $$
create procedure sp_name(参数)
BEGIN
body //存储过程代码
END $$

调用存储过程

call sp_name(参数)

删除存储过程

drop procedure sp_name