檢視是虛擬的表。
與包含資料的表不一樣,檢視只包含使用時動態檢索資料的查詢
作為檢視,它不包含表中應該有的任何列或資料,它包含的是乙個sql
查詢(與上面用以正確聯結表的相同的查詢)。
重用
sql語句。
簡化複雜的
sql操作。在編寫查詢後,可以方便地重用它而不必知道它的基本查詢細節。
使用表的組成部分而不是整個表。
保護資料。可以給使用者授予表的特定部分的訪問許可權而不是整個表的訪問許可權。
更改資料格式和表示。檢視可返回與底層表的表示和格式不同的資料。
在檢視建立之後,可以用與表基本相同的方式利用它們。
重要的是知道檢視
僅僅是用來檢視儲存在別處的資料的一種設施
。檢視本身不包含資料
,因此它們返回的資料是從其他表中檢索出來的。在新增或更改這些表中的資料時,檢視將返回改變過的資料。
與表一樣,檢視必須
唯一命名
(不能給檢視取與別的檢視或表相同的名字)。
對於可以建立的
檢視數目沒有限制。
為了建立檢視,必須具有
足夠的訪問許可權
。這些限制通常由資料庫管理人員授予。
檢視可以巢狀
,即可以利用從其他檢視中檢索資料的查詢來構造乙個檢視。
order by
可以用在檢視中,但如果從該檢視檢索資料
select
中也 含有order by
,那麼該檢視中的
order by
將被覆蓋。
檢視不能索引
,也不能有關聯的觸發器或預設值。
檢視可以和表一起使用
。例如,編寫一條聯結表和檢視的
select語句。
檢視用
create view
語句來建立。
使用show create view viewname
;來檢視建立檢視的語句。
用drop
刪除檢視,其語法為
drop view viewname;。
更新檢視時,可以
先用drop再用create
,也可以直接用
create or replace view
。如果要更新的檢視不存在,則第
2條更新語句會建立乙個檢視;如果要更新的檢視存在,則第2
條更新語句會替換原 有檢視。
mysql必知必會 讀書筆記
一.show命令 1.使用命令列 管理員方式 啟動mysql服務 net start mysql57 mysql57為安裝時取得名字 2.登陸本地mysql資料庫 mysql uroot p 3.顯示已有的資料庫 show databases 4.使用某資料庫 use users 5.先使用4命令 ...
MySQL必知必會讀書筆記二
暫時只更到檢視之前的內容了 後續的東西有機會再補 插入資料 insert into customers cust address,cust city,cust state,cust zip,cust country,cust contact,cust email values pep e 100 m...
《MySQL必知必會》讀書筆記 4
ps 乙個實際的儲存過程案例 create definer root localhost procedure sp delete article by id in id int begin routine body goes here.declare temp int set aid id sele...