MySQL學習筆記之視圖的建立,更新,刪除,查詢

本篇文章經過學習《數據庫系統概論》和《MySQL從入門到精通》,總結所得sql

在MySQL數據庫中爲咱們提供了一種特性,它能夠簡化查詢,提升安全性,就是本章要學習的視圖視圖是從一個或幾個表(或視圖)導出的表。本質上是一個虛表,其內容與基本表類似。在數據庫中不存放視圖對應的數據,而是存放視圖的定義,在具體引用視圖時經過查詢語句動態生成,因此基本表發生變化,從視圖中查詢出來的數據也發生變化。視圖就像一個窗口,透過它能夠看到數據庫中感興趣的數據及變化。數據庫

建立視圖

建立視圖的基本語法:安全

create view 視圖名 (列名1,列名2,.... 列名n)
as 
查詢語句
複製代碼

create view 爲建立視圖的關鍵字;視圖名不能和表名或已有的視圖名重名;括號中的列名或者所有省略或者所有指定,列名的數量要和查詢語句中列的數量一致;查詢語句爲MySQL能夠正確使用的查詢語句。學習

查看視圖

命令 說明
show tables 顯示錶和視圖的名字
show table status 顯示所設置數據庫裏表和視圖的詳細信息
show create view 視圖名 查看指定視圖的定義信息
describe 或 desc 視圖名 查看指定視圖的設計信息

修改視圖

經過alter語句修改視圖

基本語法:spa

alter view 視圖名 (列名1,列名2, ... 列名n)
as
查詢語句
複製代碼

經過alter view語句,來實現修改指定視圖的功能。設計

經過create or replace view 來修改視圖

基本語法:code

create or replace view 視圖名 (列名1, 列名2, ... 列名n)
as
查詢語句
複製代碼

若是數據庫中已經存在指定的視圖,那麼就對該視圖進行修改,若是不存在就建立該視圖。(有 就修改,沒有 就建立)cdn

使用視圖進行操做

視圖定義後,用戶能夠像對基本表同樣對視圖進行操做,但須要注意下面兩點:token

  • 對視圖數據進行添加、刪除、修改直接影響基本表
  • 視圖來自多個基本表時,不容許添加和刪除數據

  1. 查詢視圖: 如:select * from 視圖名;
  2. 添加數據: 如:insert into 視圖名 values (常量1, 常量2,... 常量n);values後面的數據常量與視圖中的列要一一對應。
  3. 刪除數據: 如:delete from 視圖名 where 條件;
  4. 修改數據: 如:update 視圖名 set 修改列 where 條件;

能夠查看《MySQL學習筆記之對錶中數據的增,刪,改。》進行了解 對數據的操做。get

刪除視圖

基本語法:

drop view 視圖名1 [,視圖名2,...,視圖名n];
複製代碼

經過drop view語句能夠一次刪除一個或者多個視圖。

結束

今天的學習到此爲止,有不對的或不許確的地方能夠在評論中指定出來。感謝大家的鼓勵。

公衆號:HarLearn

HarLearn
相關文章
相關標籤/搜索