【发布时间】:2021-07-19 14:58:33
【问题描述】:
我的数据库中有很多表,每个表都有主键、唯一键和自动增量。我想删除所有这三个。我如何在脚本中执行此操作,而无需为数据库中的每个表手动执行此操作。是否有任何自动化脚本可以一次将所有这些内容删除到数据库的所有表中。
(来自评论)
CREATE TABLE emp3 (
id int NOT NULL,
name varchar(30) DEFAULT NULL,
PRIMARY KEY (id),
UNIQUE KEY c_unique (name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
【问题讨论】:
-
只需执行
CREATE TABLE new_table SELECT * FROM old_table- 新表将不包含索引和 AI 属性。 -
@Akina - 但是你需要重新启用一些 PK,以及任何有用的索引。
-
您的问题的答案是否定的,没有自动脚本可以一次将所有这些都删除到所有表中。 ALTER TABLE 一次作用于一张表。
标签: mysql database database-design primary-key