MySQL - SHOW CREATE VIEW 語句



MySQL SHOW CREATE VIEW 語句

MySQL 檢視是基於預定義 SQL 查詢的表格組合。它以關聯名稱的形式儲存在資料庫中。

MySQL SHOW CREATE VIEW 語句顯示用於建立指定檢視的 CREATE VIEW 語句。

語法

以下是 ALTER VIEW 語句的語法

SHOW CREATE VIEW name

其中,name 是您需要其 CREATE 語句的檢視的名稱。

示例

假設我們使用如下所示的 CREATE 語句建立了一個名為 dispatches_data 的表:

CREATE TABLE dispatches_data(
   ProductName VARCHAR(255),
   CustomerName VARCHAR(255),
   DispatchTimeStamp timestamp,
   Price INT,
   Location VARCHAR(255)
);

現在,讓我們向 dispatches_data 表中插入一些記錄:

Insert into dispatches_data values
('Key-Board', 'Raja', TIMESTAMP('2019-05-04', '15:02:45'), 7000, 
'Hyderabad'),
('Earphones', 'Roja', TIMESTAMP('2019-06-26', '14:13:12'), 2000, 
'Vishakhapatnam'),
('Mouse', 'Puja', TIMESTAMP('2019-12-07', '07:50:37'), 3000, 
'Vijayawada'),
('Mobile', 'Vanaja' , TIMESTAMP ('2018-03-21', '16:00:45'), 9000, 
'Chennai'),
('Headset', 'Jalaja' , TIMESTAMP('2018-12-30', '10:49:27'), 6000, 
'Goa');

假設我們使用如下所示的 CREATE VIEW 語句建立了一個檢視:

CREATE VIEW testView AS SELECT * FROM dispatches_data;

您可以使用 SHOW CREATE VIEW 語句檢索上面建立的檢視的定義,如下所示:

SHOW CREATE VIEW testView\G;

輸出

上述 mysql 查詢產生以下輸出:

************** 1. row **************
                View: testview
         Create View: CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost`
        		      SQL SECURITY DEFINER VIEW `testview` AS select 
					  `dispatches_data`.`ProductName` AS `ProductName`,
					  `dispatches_data`.`CustomerName` AS `CustomerName`,
					  `dispatches_data`.`DispatchTimeStamp` AS 
					  `DispatchTimeStamp`,`dispatches_data`.`Price` AS 
					  `Price`,`dispatches_data`.`Location` AS `Location` 
					  from `dispatches_data`
character_set_client: cp850
collation_connection: cp850_general_ci

以下查詢更改表的 ALGORITHM:

ALTER ALGORITHM=MERGE VIEW testView AS SELECT * FROM dispatches_data;

如果您在更改表後檢索上面建立的檢視的定義,您可以觀察到演算法的名稱:

SHOW CREATE VIEW testView\G;

輸出

執行上述查詢後,它會生成以下輸出:

************** 1. row **************
                View: testview
         Create View: CREATE ALGORITHM=MERGE DEFINER=`root`@`localhost` 
		              SQL SECURITY DEFINER VIEW `testview` AS select 
					  `dispatches_data`.`ProductName` AS `ProductName`,
					  `dispatches_data`.`CustomerName` AS `CustomerName`,
					  `dispatches_data`.`DispatchTimeStamp` AS 
					  `DispatchTimeStamp`,`dispatches_data`.`Price` AS 
					  `Price`,`dispatches_data`.`Location` AS `Location` 
					  from `dispatches_data`
character_set_client: cp850
collation_connection: cp850_general_ci
廣告