
- MariaDB 教程
- MariaDB - 首頁
- MariaDB - 簡介
- MariaDB - 安裝
- MariaDB - 管理
- MariaDB - PHP 語法
- MariaDB - 連線
- MariaDB - 建立資料庫
- MariaDB - 刪除資料庫
- MariaDB - 選擇資料庫
- MariaDB - 資料型別
- MariaDB - 建立表
- MariaDB - 刪除表
- MariaDB - 插入查詢
- MariaDB - 選擇查詢
- MariaDB - WHERE 子句
- MariaDB - 更新查詢
- MariaDB - 刪除查詢
- MariaDB - LIKE 子句
- MariaDB - ORDER BY 子句
- MariaDB - JOIN
- MariaDB - NULL 值
- MariaDB - 正則表示式
- MariaDB - 事務
- MariaDB - ALTER 命令
- 索引和統計表
- MariaDB - 臨時表
- MariaDB - 表克隆
- MariaDB - 序列
- MariaDB - 管理重複項
- MariaDB - SQL 注入防護
- MariaDB - 備份方法
- MariaDB - 備份載入方法
- MariaDB - 有用函式
- MariaDB 有用資源
- MariaDB - 快速指南
- MariaDB - 有用資源
- MariaDB - 討論
MariaDB - 臨時表
由於速度或資料的一次性使用,某些操作可以從臨時表中受益。臨時表的生命週期在會話終止時結束,無論您是從命令提示符、PHP 指令碼還是透過客戶端程式使用它們。它也不會以典型的方式出現在系統中。SHOW TABLES 命令不會顯示包含臨時表的列表。
建立臨時表
在 CREATE TABLE 語句中使用 TEMPORARY 關鍵字可以生成一個臨時表。請檢視下面的示例:
mysql>CREATE TEMPORARY TABLE order ( item_name VARCHAR(50) NOT NULL , price DECIMAL(7,2) NOT NULL DEFAULT 0.00 , quantity INT UNSIGNED NOT NULL DEFAULT 0 );
在建立臨時表時,您可以使用 LIKE 子句克隆現有表,這意味著所有其一般特性都會被複制。由於 TEMPORARY 關鍵字的存在,用於生成臨時表的 CREATE TABLE 語句不會提交事務。
儘管臨時表與非臨時表不同,並在會話結束時刪除,但它們可能會發生某些衝突:
它們有時會與已過期會話的幽靈臨時表衝突。
它們有時會與非臨時表的影子名稱衝突。
注意 - 臨時表允許與現有的非臨時表具有相同的名稱,因為 MariaDB 將其視為不同的引用。
管理
MariaDB 需要為使用者授予建立臨時表的許可權。使用 GRANT 語句將此許可權授予非管理員使用者。
GRANT CREATE TEMPORARY TABLES ON orders TO 'machine122'@'localhost';
刪除臨時表
雖然臨時表實質上在會話結束時被刪除,但您可以選擇刪除它們。刪除臨時表需要使用 TEMPORARY 關鍵字,最佳實踐建議在任何非臨時表之前刪除臨時表。
mysql> DROP TABLE order;
廣告