文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  CREATE TABLE ... LIKE 語法

15.1.20.3 CREATE TABLE ... LIKE 語法

使用 CREATE TABLE ... LIKE 來根據另一個資料表的定義建立一個空的資料表,包括原始資料表中所定義的任何欄位屬性和索引。

CREATE TABLE new_tbl LIKE orig_tbl;

複製是使用與原始資料表相同版本的資料表儲存格式建立的。原始資料表需要 SELECT 權限。

LIKE 僅適用於基本資料表,不適用於檢視表。

重要事項

LOCK TABLES 語法生效時,您無法執行 CREATE TABLECREATE TABLE ... LIKE

CREATE TABLE ... LIKE 執行與 CREATE TABLE 相同的檢查。這表示如果目前的 SQL 模式與建立原始表格時生效的模式不同,則表格定義可能會被認為對新模式無效,並導致語句失敗。

對於 CREATE TABLE ... LIKE,目標表格會保留原始表格的生成欄位資訊。

對於 CREATE TABLE ... LIKE,目標表格會保留原始表格的表達式預設值。

對於 CREATE TABLE ... LIKE,目標表格會保留原始表格的 CHECK 約束,但所有約束名稱都會被產生。

CREATE TABLE ... LIKE 不會保留為原始表格指定的任何 DATA DIRECTORYINDEX DIRECTORY 表格選項,也不會保留任何外鍵定義。

如果原始表格是 TEMPORARY 表格,則 CREATE TABLE ... LIKE 不會保留 TEMPORARY。若要建立 TEMPORARY 目標表格,請使用 CREATE TEMPORARY TABLE ... LIKE

CREATE TABLE ... LIKE 操作會將所有 ENGINE_ATTRIBUTESECONDARY_ENGINE_ATTRIBUTE 值套用到新表格。