亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > mysql視圖原理與用法實例小結

mysql視圖原理與用法實例小結

熱門標簽:上海智能外呼系統需要多少錢 做地圖標注都需要什么工具 銀川電銷外呼系統定制 甘孜電話機器人廠家 西安400電話在哪里辦理 哈爾濱crm外呼系統價格 電銷機器人好品牌門薩維l 中科嘉智人工智能電銷機器人 凱立德科技館地圖標注

本文實例總結了mysql視圖原理與用法。分享給大家供大家參考,具體如下:

一、什么是視圖

視圖是指計算機數據庫中的視圖,是一個虛擬表,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據。但是,視圖并不在數據庫中以存儲的數據值集形式存在。行和列數據來自由定義視圖的查詢所引用的表,并且在引用視圖時動態生成。簡單的來說視圖是由其定義結果組成的表;

例子:定一班級表class(ID,name) 學生表 student(id,class_id,name);

當數據表結構很復雜,但我們只關心其中一部分數據的時候就可以使用視圖,定義關心的數據

創建視圖:

復制代碼 代碼如下:
create view v_stu as select  c.name as c_name ,s.name as stu_name from student  s,class  c where c.id = s.class_id

查詢視圖 v_stu

select * from v_stu

c_name stu_name
wu 一班
li 二班

二、為什么使用視圖

1.安全性。一般是這樣做的:創建一個視圖,定義好該視圖所操作的數據。之后將用戶權限與視圖綁定。這樣的方式是使用到

了一個特性:grant語句可以針對視圖進行授予權限。

2.查詢性能提高

3.有靈活性的功能需求后,需要改動表的結構而導致工作量比較大。那么可以使用虛擬表的形式達到少修改的效果。

這是在實際開發中比較有用的

例子:假如因為某種需要,a表與b表需要進行合并起來組成一個新的表c。最后a表與b表都不會存在了。而由于原來程序中編寫sql分別是基于a表與b表查詢的,這就意味著需要重新編寫大量的sql(改成向c表去操作數據)。而通過視圖就可以做到不修改。定義兩個視圖名字還是原來的表名a和b。a、b視圖完成從c表中取出內容。

說明:使用這樣的解決方式,基于對視圖的細節了解越詳細越好。因為使用視圖還是與使用表的語法上沒區別。比如視圖名a,那么查詢還是"select * from a"。

4.復雜的查詢需求。可以進行問題分解,然后將創建多個視圖獲取數據。將視圖聯合起來就能得到需要的結果了。

視圖的工作機制:當調用視圖的時候,才會執行視圖中的sql,進行取數據操作。視圖的內容沒有存儲,而是在視圖被引用的時候才派生出數據。這樣不會占用空間,由于是即時引用,視圖的內容總是與真實表的內容是一致的。視圖這樣設計有什么好處?節省空間,內容是總是一致的話,那么我們不需要維護視圖的內容,維護好真實表的內容,就可以保證視圖的完整性了。

三、視圖的執行方式

視圖中是沒有保存真實的數據的,只是引用了真實表中的數據,其引用的數據有其定義決定,當我們進行查詢視圖其實是從定義中取數據;

MySQL 中會有infomation_schema 這么一個數據庫,它是mysql自帶的一個數據庫,存儲mysql數據庫的一些元數據,所謂的元數據是指的是mysql的表信息。視圖信息、列信息等。簡單的說就相當于mysql數據庫的一個目錄。所有的視圖在views 表中都有存儲說明;從這里我們可以看出mysql 的工作機制;

select * from v_stu;

v_stu也可以是一個表名,由于視圖和表的物理結構不同,表中可以查出真實的數據,而視圖需要查找到是定義,從而得到需要的數據,我們怎么知道v_stu是一個視圖呢?是因為有一個查看目錄的例程在做這件事。

視圖機制:

視圖處理有兩種機制,替換式和具化式;

① 替換式:操作視圖時,視圖名直接被視圖定義給替換掉,結果就變成select * from (select  c.name as c_name ,s.name as stu_name from student  s,class  c where c.id = s.class_id),在提交給mysql執行;

② 具化式:mysql先得到了視圖執行的結果,該結果形成一個中間結果暫時存在內存中。之后,外面的select語句就調用了這些中間結果(臨時表)。

看起來都是要得到結果,形式上有區別,好像沒體會到本質上的區別。兩種方式又有什么樣的不同呢?

替換方式,將視圖公式替換后,當成一個整體sql進行處理了。具體化方式,先處理視圖結果,后處理外面的查詢需求。

替換方式可以總結為,先準備,后執行。

具體化方式總結理解為,分開處理。

哪種方式好?不知道。mysql會自己確定使用哪種方式進行處理的。自己在定義視圖的時候也可以指定使用何種方式。

例子:

語法:

CREATE [ALGORITHM]={UNDEFINED|MERGE|TEMPTABLE}]
VIEW 視圖名 [(屬性清單)]
AS SELECT 語句
[WITH [CASCADED|LOCAL] CHECK OPTION];

ALGORITHM有三個參數分別是:merge、TEMPTABLE、UNDEFINED

merge:處理方式替換式,可以進行更新真實表中的數據;

TEMPTABLE:具化式,由于數據存儲在臨時表中,所以不可以進行更新操作!

當你的參數定義是UNDEFINED(沒有定義ALGORITHM參數)。mysql更傾向于選擇替換方式。是因為它更加有效。

例子:

create ALGORITHM=merge view v_stu as select c.name as c_name ,s.name as stu_name from student s,class c where c.id = s.class_id
update v_stu set c_name = '' where c_name ='';

執行成功

create ALGORITHM=TEMPTABLEview v_stu as select c.name as c_name ,s.name as stu_name from student s,class c where c.id = s.class_id

執行失敗,不可以更新!

更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》、《MySQL數據庫鎖相關技巧匯總》及《MySQL常用函數大匯總》

希望本文所述對大家MySQL數據庫計有所幫助。

您可能感興趣的文章:
  • MySQL的視圖和索引用法與區別詳解
  • 淺談MySql 視圖、觸發器以及存儲過程
  • mysql視圖之創建視圖(CREATE VIEW)和使用限制實例詳解
  • MySQL中Update、select聯用操作單表、多表,及視圖與臨時表的區別
  • mysql三張表連接建立視圖
  • MySQL在多表上創建視圖方法
  • MySQL視圖原理與基本操作示例
  • 利用python解決mysql視圖導入導出依賴的問題
  • 詳細分析mysql視圖的原理及使用方法

標簽:安康 安徽 山南 浙江 平頂山 四川 濮陽 那曲

巨人網絡通訊聲明:本文標題《mysql視圖原理與用法實例小結》,本文關鍵詞  mysql,視圖,原理,與,用法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《mysql視圖原理與用法實例小結》相關的同類信息!
  • 本頁收集關于mysql視圖原理與用法實例小結的相關信息資訊供網民參考!
  • 推薦文章
    91麻豆tv| 九九九国产| 天天色成人网| 国产视频一区二区在线观看| 久久99中文字幕| 国产视频一区二区三区四区| 国产麻豆精品免费密入口| 国产美女在线观看| 精品国产亚洲人成在线| 精品视频在线看| 日韩av成人| 日韩在线观看视频黄| 999精品在线| 国产麻豆精品视频| 亚洲精品中文一区不卡| 色综合久久天天综线观看| 青青青草影院| 香蕉视频亚洲一级| 成人免费福利片在线观看| 亚飞与亚基在线观看| 黄色短视屏| 可以免费看污视频的网站| 日本免费乱理伦片在线观看2018| 999久久66久6只有精品| 久久国产精品自由自在| 欧美1区2区3区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 欧美激情伊人| 亚洲 欧美 成人日韩| 久久99中文字幕| 九九九网站| 国产一区二区精品| 久草免费在线观看| a级精品九九九大片免费看| 999精品影视在线观看| 欧美α片无限看在线观看免费| 亚洲天堂在线播放| 日韩av成人| 国产一区二区精品| 亚洲精品影院久久久久久| 成人在免费观看视频国产| 91麻豆精品国产高清在线| 日本特黄特黄aaaaa大片| 午夜激情视频在线观看| 精品久久久久久综合网| 日本特黄一级| 日本伦理网站| 国产一区二区高清视频| 久久久久久久网| 国产精品12| 久草免费在线观看| 久久成人性色生活片| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 亚洲爆爽| 国产网站免费在线观看| 天天做日日干| 免费的黄色小视频| 国产成人精品综合| 国产国语在线播放视频| 久草免费资源| 欧美激情一区二区三区在线播放| 99久久视频| 九九久久99| 香蕉视频一级| 国产一区二区福利久久| 精品在线观看一区| 久久精品店| 午夜家庭影院| 欧美α片无限看在线观看免费| 国产麻豆精品高清在线播放| 黄视频网站免费看| 午夜久久网| 99热精品在线| 国产网站免费观看| 久久福利影视| 国产91精品一区| 九九精品久久久久久久久| 国产亚洲免费观看| 国产亚洲免费观看| 国产一级强片在线观看| 一级女人毛片人一女人| 久久成人综合网| 日本免费区| 99久久精品国产麻豆| 亚洲精品影院一区二区| 欧美另类videosbestsex久久 | 日韩在线观看免费| 午夜激情视频在线播放| 国产精品自拍一区| 999精品影视在线观看| 99色视频在线| 可以免费看毛片的网站| 久久国产精品自线拍免费| 国产原创视频在线| 999久久久免费精品国产牛牛| 日日夜夜婷婷| 二级片在线观看| 亚洲第一色在线| 日韩在线观看视频黄| 国产韩国精品一区二区三区| 亚洲女人国产香蕉久久精品| 日韩中文字幕一区二区不卡| 成人免费福利片在线观看| 国产成人精品影视| 国产伦精品一区三区视频| 成人免费观看网欧美片| 日本在线不卡视频| 色综合久久天天综合| 韩国三级一区| 日韩专区一区| 国产成人啪精品| 欧美一区二区三区在线观看| 天天色色网| 超级乱淫伦动漫| 久久国产精品自由自在| 国产一区二区福利久久| 午夜激情视频在线播放| 日本在线播放一区| 国产欧美精品| 美女被草网站| 久久精品免视看国产明星| 色综合久久天天综合| 国产成人啪精品| 亚洲精品永久一区| 高清一级淫片a级中文字幕| 深夜做爰性大片中文| 一级毛片视频播放| 免费一级片网站| 黄视频网站免费看| 青青久久精品国产免费看| 免费一级生活片| 美女免费精品视频在线观看| 欧美国产日韩一区二区三区| 香蕉视频亚洲一级| 午夜在线亚洲| 999精品影视在线观看| 午夜久久网| 免费一级生活片| 国产视频久久久| 九九精品久久久久久久久| 亚欧乱色一区二区三区| 日韩中文字幕在线亚洲一区| 免费的黄视频| 亚洲女初尝黑人巨高清在线观看| 精品国产一区二区三区久| 九九精品在线| 国产一区二区高清视频| 久久成人性色生活片| 日日夜夜婷婷| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 欧美一区二区三区性| 一级毛片视频免费| 久久国产精品永久免费网站| 午夜欧美成人久久久久久| 精品在线观看一区| 四虎影视库| 亚洲第一视频在线播放| 成人免费观看视频| 精品国产三级a∨在线观看| 国产麻豆精品免费密入口| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 日韩av片免费播放| 国产视频在线免费观看| 欧美爱爱网| 天天色成人网| 91麻豆爱豆果冻天美星空| 午夜激情视频在线观看| 国产a视频精品免费观看| 韩国毛片免费| 91麻豆精品国产自产在线观看一区| 四虎影视精品永久免费网站| 91麻豆精品国产自产在线| 国产不卡精品一区二区三区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 久久国产一久久高清| 国产不卡在线观看视频| 日日夜夜婷婷| 精品国产一区二区三区精东影业| 欧美一级视频高清片| 一本伊大人香蕉高清在线观看| 久草免费在线色站| 欧美激情一区二区三区在线| 久久精品道一区二区三区| 韩国三级视频网站| 免费一级生活片| 国产一区二区精品久久91| 久久国产精品永久免费网站| 高清一级淫片a级中文字幕| 国产美女在线观看| 精品国产亚一区二区三区| 香蕉视频久久| 免费的黄色小视频| 日本特黄特黄aaaaa大片| 欧美另类videosbestsex久久 | 成人影视在线观看| 久久国产一久久高清| 国产综合成人观看在线| 欧美激情在线精品video| 精品视频在线观看免费| 美女免费精品视频在线观看|