文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美國信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  CREATE TABLE ... SELECT 陳述式的複製

19.5.1.7 CREATE TABLE ... SELECT 陳述式的複製

當複製 CREATE TABLE ... SELECT 陳述式時,MySQL 會套用這些規則

  • CREATE TABLE ... SELECT 永遠會執行隱含的 commit (第 15.3.3 節「導致隱含 commit 的陳述式」)。

  • 如果目標資料表不存在,則記錄會如下所示。無論是否有 IF NOT EXISTS 都沒有關係。

    • STATEMENTMIXED 格式:陳述式會以撰寫的方式記錄。

    • ROW 格式:陳述式會記錄為 CREATE TABLE 陳述式,後面接著一系列的 insert-row 事件。

      對於支援原子 DDL 的儲存引擎,陳述式會記錄為一個交易。如需詳細資訊,請參閱第 15.1.1 節「原子資料定義陳述式支援」

  • 如果 CREATE TABLE ... SELECT 陳述式失敗,則不會記錄任何內容。這包括目標資料表存在且未指定 IF NOT EXISTS 的情況。

  • 如果目標資料表存在且已指定 IF NOT EXISTS,MySQL 9.0 會完全忽略陳述式;不會插入或記錄任何內容。

MySQL 9.0 不允許 CREATE TABLE ... SELECT 語句對除了該語句建立的表格以外的任何表格進行變更。