欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql視圖功能與用法實(shí)例分析

 更新時(shí)間:2019年04月29日 09:48:11   作者:雨落知音  
這篇文章主要介紹了mysql視圖功能與用法,結(jié)合實(shí)例形式分析了mysql數(shù)據(jù)庫(kù)視圖的概念、功能、使用方法、與臨時(shí)表的區(qū)別及操作相關(guān)注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了mysql視圖功能與用法。分享給大家供大家參考,具體如下:

通俗的講,視圖就是一條SELECT語(yǔ)句執(zhí)行后返回的結(jié)果集。

//單表視圖
  CREATE [ALGORITHM]={UNDEFINED|MERGE|TEMPTABLE}]
    VIEW 視圖名 [(屬性清單)]
    AS SELECT 語(yǔ)句
    [WITH [CASCADED|LOCAL] CHECK OPTION];
  //將查詢到的結(jié)果返回為一個(gè)虛擬表,會(huì)根據(jù)數(shù)據(jù)庫(kù)變化而變化
  CREATE VIEW work_view(ID, Name, Addr) AS SELECT id,name,address FROM work;
  //多表上創(chuàng)建視圖
  //ALGORITHM=MERGE ALGORITHM有三個(gè)參數(shù)分別是:merge、TEMPTABLE、UNDEFINED(merge合并表,temptable無(wú)法更新信息,undefined)
   CREATE ALGORITHM=MERGE VIEW work_view2(ID,NAME,SALARY) AS SELECT work.id,name,salary FROM work,salary WHERE work.id=salary.id WITH LOCAL CHECK OPTION;

方便操作,特別是查詢操作,減少?gòu)?fù)雜的SQL語(yǔ)句,增強(qiáng)可讀性;

視圖與表是一對(duì)一關(guān)系情況:如果沒(méi)有其它約束(如視圖中沒(méi)有的字段,在基本表中是必填字段情況),是可以進(jìn)行增刪改數(shù)據(jù)操作;

視圖與表是一對(duì)多關(guān)系情況:如果只修改一張表的數(shù)據(jù),且沒(méi)有其它約束(如視圖中沒(méi)有的字段,在基本表中是必填字段情況),是可以進(jìn)行改數(shù)據(jù)操作,如以下語(yǔ)句,操作成功;

視圖和臨時(shí)表的區(qū)別

  • 視圖只是一條預(yù)編譯的SQL語(yǔ)句,并不保存實(shí)際數(shù)據(jù)
  • 臨時(shí)表是保存在tempdb中的實(shí)際的表
  • 物理空間的分配不一樣,試圖不分配空間,   臨時(shí)表會(huì)分配空間
  • 視圖是一個(gè)快照,是一個(gè)虛表
  • 臨時(shí)表是客觀存在的表類型對(duì)象Create TEMPORARY table
  • 它們的結(jié)構(gòu)一個(gè)是表、一個(gè)快照??梢园岩晥D像象成聯(lián)合表的快捷方式

創(chuàng)建臨時(shí)表

CREATE TEMPORARY TABLE tmp_table (
name VARCHAR(10) NOT NULL,
value INTEGER NOT NULL)

直接將查詢結(jié)果導(dǎo)入臨時(shí)表

CREATE TEMPORARY TABLE tmp_table SELECT * FROM table_name

臨時(shí)表只在當(dāng)前連接可見(jiàn),當(dāng)這個(gè)連接關(guān)閉的時(shí)候,會(huì)自動(dòng)drop。在同一個(gè)query語(yǔ)句中,你只能查找一次臨時(shí)表。show tables 語(yǔ)句不會(huì)列舉臨時(shí)表,但是會(huì)列出內(nèi)存表。你不能用rename來(lái)重命名一個(gè)臨時(shí)表。但是,你可以alter table代替:

內(nèi)存表:表結(jié)構(gòu)建在磁盤里,數(shù)據(jù)在內(nèi)存里 ,當(dāng)停止服務(wù)后,表中的數(shù)據(jù)丟失,而表的結(jié)構(gòu)不會(huì)丟失。內(nèi)存表也可以被看作是臨時(shí)表的一種。

內(nèi)存表的建立:

CREATE TEMPORARY TABLE tmp_table (
name VARCHAR(10) NOT NULL,
value INTEGER NOT NULL
) TYPE = HEAP

注意: TYPE = HEAP必須要有。

內(nèi)存表必須使用memory存儲(chǔ)引擎

更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲(chǔ)過(guò)程技巧大全》、《MySQL數(shù)據(jù)庫(kù)鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總

希望本文所述對(duì)大家MySQL數(shù)據(jù)庫(kù)計(jì)有所幫助。

相關(guān)文章

  • Mysql的語(yǔ)句生成后門木馬的方法

    Mysql的語(yǔ)句生成后門木馬的方法

    這篇文章主要介紹了Mysql的語(yǔ)句生成后門木馬的方法,大家不要隨意搞破壞哦,小伙伴們學(xué)習(xí)下就好了。
    2015-04-04
  • mysql unsigned 用法及相減出現(xiàn)補(bǔ)數(shù)溢出解決方法

    mysql unsigned 用法及相減出現(xiàn)補(bǔ)數(shù)溢出解決方法

    unsigned表示無(wú)符號(hào)的意思,也就是非負(fù)數(shù),只用于整型并且unsigned 是MYSQL自定義的類型,非標(biāo)準(zhǔn)SQL。用途1是紅苕說(shuō)的起到約束數(shù)值的作用,2是可以增加數(shù)值范圍(相當(dāng)于把負(fù)數(shù)那部分加到正數(shù)上)。不過(guò)少用,不方便移植
    2012-04-04
  • mysql千萬(wàn)級(jí)數(shù)據(jù)分頁(yè)查詢性能優(yōu)化

    mysql千萬(wàn)級(jí)數(shù)據(jù)分頁(yè)查詢性能優(yōu)化

    本文給大家分享的是作者在使用mysql進(jìn)行千萬(wàn)級(jí)數(shù)據(jù)量分頁(yè)查詢的時(shí)候進(jìn)行性能優(yōu)化的方法,非常不錯(cuò)的一篇文章,對(duì)我們學(xué)習(xí)mysql性能優(yōu)化非常有幫助
    2017-11-11
  • MySQL分區(qū)表的基本入門教程

    MySQL分區(qū)表的基本入門教程

    這篇文章主要給大家介紹了關(guān)于MySQL分區(qū)表的基本入門教程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • MySQL中慢SQL優(yōu)化方法小結(jié)

    MySQL中慢SQL優(yōu)化方法小結(jié)

    這篇文章主要為大家詳細(xì)介紹了MySQL中慢SQL優(yōu)化方法的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以參考一下
    2024-04-04
  • mysql自定義排序順序語(yǔ)句

    mysql自定義排序順序語(yǔ)句

    這篇文章主要介紹了mysql 自定義排序順序,在sql語(yǔ)句中加入ORDER BY FIELD,需要的朋友可以參考下
    2014-02-02
  • mysql?亂碼字符?latin1?characters?轉(zhuǎn)換為?UTF8詳情

    mysql?亂碼字符?latin1?characters?轉(zhuǎn)換為?UTF8詳情

    這篇文章主要介紹了mysql?亂碼字符?latin1?characters?轉(zhuǎn)換為?UTF8詳情,文章基于MySQL的相關(guān)資料展開(kāi)詳細(xì)內(nèi)容。需要的小伙伴可以參考一下
    2022-04-04
  • 推薦沒(méi)有虛擬主機(jī)的小巧的Mysql數(shù)據(jù)庫(kù)備份腳本(PHP)

    推薦沒(méi)有虛擬主機(jī)的小巧的Mysql數(shù)據(jù)庫(kù)備份腳本(PHP)

    推薦沒(méi)有虛擬主機(jī)的小巧的Mysql數(shù)據(jù)庫(kù)備份腳本(PHP)...
    2007-07-07
  • mysql5.7.17安裝配置圖文教程

    mysql5.7.17安裝配置圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql5.7.17安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 為什么mysql字段要使用NOT NULL

    為什么mysql字段要使用NOT NULL

    數(shù)據(jù)庫(kù)字段一定要設(shè)置為 not null,不然會(huì)有很大的bug,下面就一起來(lái)介紹一下,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05

最新評(píng)論