1苟弛、視圖:是一種有結(jié)構(gòu)软棺,但是沒結(jié)果的虛擬表
創(chuàng)建視圖:基本語法:create view 視圖名字 as select 語句;
創(chuàng)建單表視圖:基表只有一個
創(chuàng)建多表視圖:基表來源至少兩個
查看視圖:show tables [like] / desc 視圖名 / show create table 視圖名;
修改視圖:alter view 視圖名字 as 新的select語句;
刪除視圖:drop view 視圖名字;
新增數(shù)據(jù):多表視圖不能新增數(shù)據(jù)
可以向單表視圖插入數(shù)據(jù),但是視圖中包含的字段必須有基表中所有不能為空影涉、或沒有默認值的字段
視圖是可以向基表插入數(shù)據(jù)的
刪除數(shù)據(jù):多表視圖不能刪除數(shù)據(jù)
單表視圖可以刪除數(shù)據(jù)
更新數(shù)據(jù):更新限制:with check option;
視圖算法:系統(tǒng)對視圖以及外部查詢視圖的select語句的一種解析方式
視圖算法分三種
undefined:未定義(默認的)
temptable:臨時表算法
merge:合并算法
算法指定:在創(chuàng)建視圖的時候create algorithm=指定算法 view 視圖名字 as select語句;
p:繁笙小心得
多表視圖不能刪改
視圖主要用于查找數(shù)據(jù)变隔,增加安全性
2、數(shù)據(jù)備份與還原:
方式:
數(shù)據(jù)表備份
單表數(shù)據(jù)備份
SQL備份
增量備份
數(shù)據(jù)表備份
存儲引擎:innodb蟹倾、myisam
innodb:只有表結(jié)構(gòu)匣缘,數(shù)據(jù)全部存儲到 ibdata1 文件中
myisam:表、數(shù)據(jù)和索引全部單獨分開存儲
單表數(shù)據(jù)備份
備份:select */字段列表 into outfile 文件所在路徑 from 數(shù)據(jù)源;
高級備份:select */字段列表 into outfile 文件所在路徑 fields 字段處理 lines 行處理 from 數(shù)據(jù)源;
fields:字段處理鲜棠,enclosed by(默認'')肌厨、terminated by(默認'\t')、escaped by(默認'\')
lines:行處理豁陆,starting by(默認'')夏哭、terminated by(默認'\r\n')
單表數(shù)據(jù)備份
數(shù)據(jù)還原:
load data infile 文件所在路徑
into table 表名[(字段列表)]
fields 字段處理
lines 行處理;
SQL備份
備份:mysqldump.exe:mysqldump/mysqldump.exe -hPup 數(shù)據(jù)庫名字 [數(shù)據(jù)表名字1 [數(shù)據(jù)表名字2...]] > 外部文件路徑
整庫備份:mysqldump/mysqldump.exe -hPup 數(shù)據(jù)庫名字 > 外部文件路徑
SQL還原數(shù)據(jù)
方案一:使用mysql.exe客戶端還原:mysql.exe/mysql -hPup 數(shù)據(jù)庫名字 < 備份文件目錄
方案二:使用SQL指令還原:source 備份文件所在路徑
增量備份:備份的是系統(tǒng)日志文件