视图(view):是一种有结构,但是没结果的虚拟表
创建视图
基本语法:create view 视图名字 as select 语句;
创建单表视图:基表只有一个
创建多表视图:基表来源至少两个
查看视图
show
tables [like] / desc 视图名 / show create table 视图名 /show create view 视图名;
修改视图
alter
view 视图名字 as 新的select语句;
删除视图
drop view 视图名字;
新增数据
多表视图不能新增数据
可以向单表视图插入数据,但是视图中包含的字段必须有基表中所有不能为空、或没有默认值的字段
视图是可以向基表插入数据的
删除数据
多表视图不能删除数据
单表视图可以删除数据
更新数据
更新限制:with check option;
当使用多表视图的时候连接方式为join是 可以更新成功,而且会生效
视图算法:
系统对视图以及外部查询视图的select语句的一种解析方式
视图算法分三种
undefined:未定义(默认的)
temptable:临时表算法
merge:合并算法
算法指定:在创建视图的时候create algorithm=指定算法view 视图名字as select语句;
设置存储引擎
备份
单表数据备份
备份:select */字段列表 into outfile 文件所在路径 from 数据源;
注意:备份后的文件不能使用记事本打开,否则会改变字符集
指定数据备份
高级备份:select */字段列表 into outfile 文件所在路径 fields 字段处理 lines 行处理 from 数据源;
fields:字段处理,enclosed by(默认'')、terminated by(默认'\t')、escaped by(默认'\\')
lines:行处理,starting by(默认'')、terminated by(默认'\r\n')
数据还原:
load data infile 文件所在路径
into table 表名[(字段列表)]
fields 字段处理
lines 行处理;
SQL备份(是数据备份的时候,介意使用sql文件
备份:mysqldump.exe
mysqldump/mysqldump.exe -hPup 数据库名字 [数据表名字1 [数据表名字2...]] > 外部文件路径
整库备份:
mysqldump/mysqldump.exe -hPup 数据库名字 > 外部文件路径
数据还原
SQL还原数据
方案一:使用mysql.exe客户端还原
mysql.exe/mysql -hPup 数据库名字 < 备份文件目录
方案二:使用SQL指令还原
source 备份文件所在路径
增量备份
备份的是系统日志文件