MySQL数据库进阶操作一(克隆表、清空表)
准备工作
一、克隆表,将数据表的数据记录生成到新的表中
方法一:
create table TEST02 like TEST01; #通过 LIKE 方法,复制 TEST01 表结构生成 TEST02表
insert into test02 select * from TET01; #修改表 TEST02 ,使其从表 TEST01 中获取字段
方法二:
create table TEST03 (select * from TEST01);
select * from TEST03;
show create table TEST03\G #获取数据表的表结构、索引等信息
二、清空表,删除除表内的所有数据
方法一:
delete from TEST02;
- 此方法清空表后,返回的结果内有删除的记录条目;delete工作时是一行一行的删除记录数据的;如果表中有自增长字段,使用 delete from 删除所有记录后,再次新添加的记录会从原来最大的记录ID后面继续自增写入记录。
例:create table TEST04 (id int primary key auto_increment,name varchar(20) not null,age char(2) not null unique key);
方法二:
truncate table TEST04;
- truncate 清空表后,没有返回被删除的条目;truncate 工作时是将表结构按原样重新建立,因此在速度上 truncate 会比 delate 清空表快;使用truncate table 清空表内数据后,ID 会从1开始重新记录。
三、创建临时表
- 临时表创建成功之后,使用 show table 命令是看不到创建的临时表的,临时表会在连接退出后被销毁。如果在退出连接之前,也可以可执行增删改查等操作,比如使用 drop table 语句手动直接删除临时表。
create temporary table 表名 (字段1 数据类型,字段2 数据类型[,...][,primary key(主键名)]);