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