MySQL 8.0 参考手册 / 第 13 章 SQL 语句 / 13.1 数据定义语句 / 13.1.20 CREATE TABLE 语句 /
13.1.17.3 CREATE TABLE ... LIKE 语句
用于CREATE TABLE ... LIKE
根据另一个表的定义创建一个空表,包括原始表中定义的任何列属性和索引:
CREATE TABLE new_tbl LIKE orig_tbl;
副本是使用与原始表相同版本的表存储格式创建的。SELECT
原始表需要
该
权限。
LIKE
仅适用于基表,不适用于视图。
重要的
您不能执行CREATE TABLE
or
CREATE TABLE ... LIKE
while
LOCK TABLES
语句生效。
CREATE TABLE ...
LIKE
CREATE TABLE
进行与不只是复制文件相同的检查
.frm
。这意味着如果当前 SQL 模式与创建原始表时有效的模式不同,则表定义可能被认为对新模式无效并且语句失败。
CREATE TABLE ... LIKE
不保留为原始表指定的任何
DATA DIRECTORY
或INDEX
DIRECTORY
表选项,或任何外键定义。
如果原表是TEMPORARY
表,
CREATE TABLE ... LIKE
则不保留
TEMPORARY
。要创建
TEMPORARY
目标表,请使用
CREATE TEMPORARY TABLE ... LIKE
.