一,复制表结构 方法1: 查看复制打印? mysqlcreatetablealikeusers; //复制表结构 queryok,0rowsaffected(0.50sec) mysqlshowtables; ---------------- |tables_in_test| ---------------- |a| |users| ---------------- 2rowsinset(0.00sec) 方法2: 查看复
一,复制表结构
方法1:
查看复制打印?
mysql> create table a like users; //复制表结构 query ok, 0 rows affected (0.50 sec) mysql> show tables; +----------------+ | tables_in_test | +----------------+ | a | | users | +----------------+ 2 rows in set (0.00 sec) 方法2:
查看复制打印?
mysql> create table b select * from users limit 0; //复制表结构 query ok, 0 rows affected (0.00 sec) records: 0 duplicates: 0 warnings: 0 mysql> show tables; +----------------+ | tables_in_test | +----------------+ | a | | b | | users | +----------------+ 3 rows in set (0.00 sec) 方法3:
查看复制打印?
mysql> show create table users\g; //显示创表的sql *************************** 1. row *************************** table: users create table: create table `users` ( //改表名 `id` bigint(20) unsigned not null auto_increment, `user_name` varchar(60) not null default '', `user_pass` varchar(64) not null default '', primary key (`id`) ) engine=innodb auto_increment=5 default charset=utf8 //改auto_increment 1 row in set (0.00 sec) 把sql语句copy出来,改一下表名和atuo_increment,然后在执行一下。
二,复制表数据,以及表结构
方法1:
查看复制打印?
mysql> create table c select * from users; //复制表的sql query ok, 4 rows affected (0.00 sec) records: 4 duplicates: 0 warnings: 0 方法2:
mysql> create table d select user_name,user_pass from users where id=1; query ok, 1 row affected (0.00 sec) records: 1 duplicates: 0 warnings: 0 上面的2种方法,方便,快捷,灵活性强。
方法3:
先创建一个空表, insert into 新表 select * from 旧表 ,或者
insert into 新表(字段1,字段2,…….) select 字段1,字段2,…… from 旧表
