可以通過(guò)select查詢視圖的方式,來(lái)判斷視圖是否存在。
為監(jiān)利等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及監(jiān)利網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站建設(shè)、成都做網(wǎng)站、監(jiān)利網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
--1.假設(shè)現(xiàn)在新建一個(gè)視圖
create or replace force view test_view as
select * from dept;
--2.通過(guò)count(1)查出來(lái)的是,該視圖中記錄的總條數(shù)
select count(1) from test_view;
--3.如果要判斷該視圖是否存在,直接查看該視圖中的內(nèi)容即可
select * from test_view;
-- 如果有字段等內(nèi)容,說(shuō)明視圖是存在的。反之,無(wú)法成功編譯,因?yàn)橐晥D不存在。
一.視圖概述
視圖是一個(gè)虛擬表,其內(nèi)容由查詢定義。同真實(shí)的表一樣,視圖包含一系列帶有名稱的列和行數(shù)據(jù)。但是,視圖并不在數(shù)據(jù)庫(kù)中以存儲(chǔ)的數(shù)據(jù)值集形式存在。行和列數(shù)據(jù)來(lái)自由定義視圖的查詢所引用的表,并且在引用視圖時(shí)動(dòng)態(tài)生成。
對(duì)其中所引用的基礎(chǔ)表來(lái)說(shuō),視圖的作用類似于篩選。定義視圖的篩選可以來(lái)自當(dāng)前或其它數(shù)據(jù)庫(kù)的一個(gè)或多個(gè)表,或者其它視圖。通過(guò)視圖進(jìn)行查詢沒(méi)有任何限制,通過(guò)它們進(jìn)行數(shù)據(jù)修改時(shí)的限制也很少。
視圖是存儲(chǔ)在數(shù)據(jù)庫(kù)中的查詢的SQL 語(yǔ)句,它主要出于兩種原因:安全原因, 視圖可以隱藏一些數(shù)據(jù),如:社會(huì)保險(xiǎn)基金表,可以用視圖只顯示姓名,地址,而不顯示社會(huì)保險(xiǎn)號(hào)和工資數(shù)等,另一原因是可使復(fù)雜的查詢易于理解和使用。
視圖:查看圖形或文檔的方式。
視圖是從一個(gè)或多個(gè)表或視圖中導(dǎo)出的表,其結(jié)構(gòu)和數(shù)據(jù)是建立在對(duì)表的查詢基礎(chǔ)上的。和表一樣,視圖也是包括幾個(gè)被定義的數(shù)據(jù)列和多個(gè)數(shù)據(jù)行,但就本質(zhì)而言這些數(shù)據(jù)列和數(shù)據(jù)行來(lái)源于其所引用的表。
所以視圖不是真實(shí)存在的基礎(chǔ)表而是一張?zhí)摫?,視圖所對(duì)應(yīng)的數(shù)據(jù)并不實(shí)際地以視圖結(jié)構(gòu)存儲(chǔ)在數(shù)據(jù)庫(kù)中,而是存儲(chǔ)在視圖所引用的表中。
視圖一經(jīng)定義便存儲(chǔ)在數(shù)據(jù)庫(kù)中,與其相對(duì)應(yīng)的數(shù)據(jù)并沒(méi)有像表那樣又在數(shù)據(jù)庫(kù)中再存儲(chǔ)一份,通過(guò)視圖看到的數(shù)據(jù)只是存放在基本表中的數(shù)據(jù)。對(duì)視圖的操作與對(duì)表的操作一樣,可以對(duì)其進(jìn)行查詢、修改(有一定的限制)、刪除。
當(dāng)對(duì)通過(guò)視圖看到的數(shù)據(jù)進(jìn)行修改時(shí),相應(yīng)的基本表的數(shù)據(jù)也要發(fā)生變化,同時(shí),若基本表的數(shù)據(jù)發(fā)生變化,則這種變化也可以自動(dòng)地反映到視圖中。
show full tables from 數(shù)據(jù)庫(kù)名 [like 'pattern']
"[]"表示可選的, like后面跟的是表名的模糊查詢,.
舉例:
一個(gè)視圖的名字叫v_user, SQL語(yǔ)句可以寫為show full tables from 數(shù)據(jù)庫(kù)名 like '%v_user%';
MySQL查詢視圖
1、什么是視圖
視圖:MySQL從5.0.1版本開(kāi)始提供視圖功能。一種虛擬存在的表,行和列的數(shù)據(jù)來(lái)自定義視圖的查詢中使用的表,并且是在使用視圖時(shí)動(dòng)態(tài)生成的,只保存了sql邏輯,不保存查詢結(jié)果
2、視圖應(yīng)用場(chǎng)景
多個(gè)地方用到同樣的查詢結(jié)果該查詢結(jié)果使用的sql語(yǔ)句較復(fù)雜
4、視圖的好處
使用簡(jiǎn)單安全數(shù)據(jù)獨(dú)立?
5、創(chuàng)建或者修 改視圖
創(chuàng)建視圖的語(yǔ)法:
修改視圖的語(yǔ)法
6、視圖更新性
視圖的可更新性和視圖中查詢的定義有關(guān)系,以下類型的視圖是不能更新的。(1)包含以下關(guān)鍵字的sql語(yǔ)句:分組函數(shù)、distinct、group ?by、having、union或者union all(2)常量視圖(3)Select中包含子查詢(4)join(5)from一個(gè)不能更新的視圖(6)where子句的子查詢引用了from子句中的表
7、刪除視圖的語(yǔ)法
用戶可以一次刪除一個(gè)或者多個(gè)視圖,前提是必須有該視圖的drop權(quán)限。
8、查看視圖結(jié)構(gòu)的語(yǔ)法
show tables;如果需要查詢某個(gè)視圖的定義,可以使用show create view命令進(jìn)行查看