我正在尝试从数据库中“复制”一个表,创建一个临时表。但是我需要索引不被复制。我正在使用此查询:
CREATE TEMPORARY TABLE temp365 LIKE contactlens;
但是结果表也包含索引。我查看了文档,没有找到一种不带索引复制结构的方法。因为索引不能有静态名称,所以我想知道如何使用简单sql删除所有索引。我开始试图避免复制它们,但这似乎是不可能的。
z0qdvdin1#
这只是为了给@wchiquito的评论提供一些例子。使用CREATETABLE创建一个没有索引的表副本非常容易。。。选择命令。如果不需要从原始表复制任何行,只需在where子句中提供一个false值或在limit one中指定0。一些例子:
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] temp365 SELECT * FROM contactlens WHERE 0;
或者有点不同的方式:
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] temp365 SELECT * FROM contactlens LIMIT 0;
这样您将得到与create table相同的结果。。。像,但没有索引。
1条答案
按热度按时间z0qdvdin1#
这只是为了给@wchiquito的评论提供一些例子。
使用CREATETABLE创建一个没有索引的表副本非常容易。。。选择命令。
如果不需要从原始表复制任何行,只需在where子句中提供一个false值或在limit one中指定0。一些例子:
或者有点不同的方式:
这样您将得到与create table相同的结果。。。像,但没有索引。