Class10:初学数据库之视图、存储过程、数据库备份

视图

什么是视图?

视图是保存查询的结果,把查询的结果当做一张虚拟的表,视图依赖于原始的表数据和结构,如果原来的表数据或者结构发生了改变,视图的

结构和数据也会发生相应改变,

 

视图的特点:

1、效率高

2、安全性,可以指定展示其中某几列数据,隐藏敏感信息

 

语法结构

CREATE VIEW 视图名 AS 查询SQL

 

创建视图

CREATE VIEW ShowStu AS SELECT * FROM student;

 

创建视图时指定字段名

CREATE VIEW view_show_stu (sid,sname,sex,birth,classid) AS SELECT * FROM student;

 

创建多表视图  不能使用*

CREATE VIEW Get_student_score AS

SELECT student.sno,student.sname,student.ssex,student.sbirthday,

student.class,score.cno,score.degree FROM student,score WHERE student.sno = score.sno

 

 

 

 

查看视图结构

DESC Get_student_score

 

查看创建视图的预计

SHOW CREATE VIEW Get_student_score

 

修改视图

语法结构:  

                     ALTER VIEW 视图名 AS 新的查询sql

修改视图

ALTER VIEW showstu AS SELECT student.sno,student.sname,student.ssex,student.sbirthday,

student.class,score.cno,score.degree FROM student,score WHERE student.sno = score.sno

--

修改视图的数据

UPDATE view_show_stu set sname='吊炸天' WHERE sid=103

 

删除视图

DROP VIEW showstu;

 

 

什么是存储过程?

多句sql同时执行,先编译好存储服务端,

 

特点

执行效率高

重复使用

 

 

临时改变结束符号

delimiter //

 

创建存储过程

CREATE PROCEDURE show_studnet()

BEGIN

              SELECT * FROM student;

END//

 

调用存储过程

CALL show_studnet()

 

查看存储过程创建sql

SHOW CREATE PROCEDURE show_studnet

 

创建一个带参数的存储过程

delimiter //

CREATE PROCEDURE show_studnet_un(IN name VARCHAR(30))

BEGIN

              SELECT * FROM student WHERE sname=name;

END//

 

调用

CALL show_studnet_un('吊炸天')

创建多个带参数的存储过程

delimiter //

CREATE PROCEDURE a (IN name VARCHAR(30)IN id INT(10))

BEGIN

              SELECT * FROM student WHERE sname=name AND sno=id;

END//

 

调用

CALL a('吊炸天',’102’)

 

删除存储过程

drop PROCEDURE show_studnet_un

 

 

数据库备份

 

备份数据库中某个表

mysqldump -uroot -p test student>C:\student.sql

 

备份单个数据库

mysqldump -u root -p 库名>C:\student.sql

 

同时备份多个库

mysqldump -u root -p --databases 库名 库名>C:\student.sql

 

备份所有数据库

mysqldump -u root -p --all-databases > C:\all.sql

 

恢复数据库

mysql -u root -p > C:\all.sql

 

进入表后导出表内容为TXT

SELECT * FROM student INTO OUTFILE 'C://Pcode/person.txt';

 

导出数据库信息

如果导出失败:

则需要添加secure_file_priv =

 

查看secure-file-priv当前的值

show variables like '%secure%';

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值