本文將向您展示如何在 MySQL 中創(chuàng)建和管理視圖。視圖是一個(gè)虛擬表,它不存儲自己的數(shù)據(jù),而是顯示存儲在其他表中的數(shù)據(jù)。本質(zhì)上,視圖是 SQL 查詢執(zhí)行的結(jié)果,它從一個(gè)或多個(gè)表中返回所需的數(shù)據(jù)行。
內(nèi)容
如何使用 CREATE VIEW 語句創(chuàng)建一個(gè)簡單的 MySQL 視圖
如何使用 JOIN 創(chuàng)建視圖以組合來自多個(gè)表的數(shù)據(jù)
如何更新 MySQL 視圖
如何刪除 MySQL 視圖
如何在 dbForge Studio for MySQL 中創(chuàng)建視圖
如何使用 CREATE VIEW 語句創(chuàng)建一個(gè)簡單的 MySQL 視圖
在 MySQL 中創(chuàng)建視圖的基本語法如下:
[db_name.]是將在其中創(chuàng)建視圖的數(shù)據(jù)庫的名稱;如果未指定,將在當(dāng)前數(shù)據(jù)庫中創(chuàng)建視圖
view_name是您正在創(chuàng)建的視圖的唯一名稱
[(co??lumn_list)]定義了可在視圖名稱后的括號中指示的所需列列表;默認(rèn)情況下,從 SELECT 語句的選擇列表中檢索列列表
select-statement是指定的 SELECT 語句,可以從表或視圖中查詢數(shù)據(jù)
這是最簡單的例子。如果我們當(dāng)前的數(shù)據(jù)庫中有一個(gè)名為customers的表,并且我們想請求一個(gè)包含訂單交易日期的客戶列表,腳本可能如下所示:
執(zhí)行此語句后,事務(wù)對象將在視圖中可用?,F(xiàn)在我們可以繼續(xù)執(zhí)行一個(gè)語句來選擇這個(gè)視圖中的所有字段:
輸出將構(gòu)成一個(gè)包含三列的表:id_number、name和transaction_date。
如何使用 JOIN 創(chuàng)建視圖以組合來自多個(gè)表的數(shù)據(jù)
我們的下一個(gè)示例稍微復(fù)雜一些,因?yàn)樗婕岸鄠€(gè)表(在我們的示例中將有三個(gè)):
此視圖為我們提供了每個(gè)客戶的訂單收入信息,按訂單 ID 分組。為此,我們使用order_details表數(shù)據(jù)計(jì)算總收入,并使用 INNER JOIN 子句從訂單表中檢索訂單 ID,從customers表中檢索客戶名稱。
如何更新 MySQL 視圖
如果需要通過視圖更新表,可以使用INSERT、UPDATE、DELETE語句對底層表的行進(jìn)行相應(yīng)的操作。但是,請注意,為了可更新,您的視圖不得包含以下任何內(nèi)容:
聚合函數(shù),例如 MIN、MAX、COUNT、AVG 或 SUM
諸如 GROUP BY、DISTINCT、HAVING、UNION 或 UNION ALL 之類的子句
左聯(lián)接或外聯(lián)接
對基表任意列的多次引用
SELECT 或 WHERE 子句中的子查詢引用出現(xiàn)在 FROM 子句中的表
FROM 子句中對不可更新視圖的引用
對非文字值的引用
現(xiàn)在讓我們基于warehouses表創(chuàng)建一個(gè)名為warehouse_details的可更新視圖。
現(xiàn)在我們可以從這個(gè)視圖查詢數(shù)據(jù):
假設(shè)我們要使用以下 UPDATE 語句通過 warehouse_details視圖更改warehouse_id ’55’的倉庫的電話號碼。
最后,我們可以使用以下查詢檢查是否已應(yīng)用更改:
如何刪除 MySQL 視圖
如果我們不再需要某個(gè)視圖,我們可以使用簡單的 DROP 語句將其刪除:
如何在 dbForge Studio for MySQL 中創(chuàng)建視圖
現(xiàn)在我們知道了基本語法,我們需要找到一個(gè)工具來幫助我們最有效地管理我們的數(shù)據(jù)庫和視圖。我們建議您嘗試使用dbForge Studio for MySQL,這是一個(gè)涵蓋您能想到的幾乎所有 MySQL 數(shù)據(jù)庫操作的工具集。下載試用版,花幾分鐘安裝它,然后讓我們開始吧。
連接到 MySQL 數(shù)據(jù)庫后,您可以使用以下兩種方式之一創(chuàng)建視圖。
第一種方法是在 SQL 文檔中編寫和執(zhí)行查詢。在這里,dbForge Studio for MySQL 提供上下文相關(guān)的代碼完成、自動語法檢查、代碼片段、大型腳本的快速導(dǎo)航以及可自定義的格式配置文件。換句話說,您可以在一個(gè)方便的 IDE 中獲得您可能需要的所有功能。
SQL 文檔中的查詢格式
如果您想通過簡單的分步指南掌握此功能,請隨時(shí)查看我們文檔的編寫和執(zhí)行 SQL 語句部分。您將在那里找到一切,從創(chuàng)建新 SQL 文檔到通過命令行界面自動執(zhí)行查詢。
第二種方式是 dbForge Studio 最著名的工具之一——Query Builder。它以圖表的形式直觀地呈現(xiàn)您的查詢,生成上述 JOIN,并啟用 INSERT、UPDATE 和 DELETE 語句的交互式構(gòu)建以更新您的視圖。
表之間帶有 JOIN 的可視化查詢設(shè)計(jì)
同樣,本文不可能涉及關(guān)于工作流的全部內(nèi)容,但我們的文檔中有一個(gè)特殊的Query Builder部分,您可以在其中獲得構(gòu)建和管理可視化圖表的詳細(xì)指南。
結(jié)論
dbForge Studio for MySQL 是一個(gè)包羅萬象的 IDE,用于數(shù)據(jù)庫開發(fā)、管理和實(shí)施。它提供了構(gòu)建查詢、比較和分析數(shù)據(jù)、開發(fā)和調(diào)試存儲過程、比較和同步數(shù)據(jù)庫模式等的最簡單方法。
立即獲得dbForge Studio for MySQL的 30 天試用版,看看它對您的日常操作有多么不可替代的作用。
京ICP備09015132號-996 | 違法和不良信息舉報(bào)電話:4006561155
© Copyright 2000-2026 北京哲想軟件有限公司版權(quán)所有 | 地址:北京市海淀區(qū)西三環(huán)北路50號豪柏大廈C2座11層1105室
北京哲想軟件集團(tuán)旗下網(wǎng)站:哲想軟件 | 哲想動畫