数据库操作,复制表

整理自:http://blog.51yip.com/mysql/1311.html

 

显示创建表的信息:

1 USE world;
2 SHOW CREATE TABLE city;

显示表结构信息:

1 CREATE TABLE `city` (
2   `ID` int(11) NOT NULL AUTO_INCREMENT,
3   `Name` char(35) NOT NULL DEFAULT '',
4   `CountryCode` char(3) NOT NULL DEFAULT '',
5   `District` char(20) NOT NULL DEFAULT '',
6   `Population` int(11) NOT NULL DEFAULT '0',
7   PRIMARY KEY (`ID`)
8 ) ENGINE=MyISAM AUTO_INCREMENT=4080 DEFAULT CHARSET=latin1

 

复制表:

仅复制表结构,可以用上面的代码直接拷贝运行一下,或者:

1 USE test;
2 CREATE TABLE city1 SELECT * FROM world.city LIMIT 0;

 

复制表内容:

USE test;
-- mysql不支持select INTO 
-- SELECT * INTO city_da FROM city

-- 替代方法:使用 create...INTO...在创建表时复制表结构并插入数据
CREATE TABLE city_create (SELECT * FROM city)
--只复制其中几行
CREATE TABLE city_id_name_create (SELECT id,name FROM city)

-- 也可以使用insert INTO,不复制表结构,仅仅插入数据
USE test;
INSERT INTO city1(id,name) SELECT id,Name FROM city

 

复制表结构和表数据:

1 USE test;
2 CREATE TABLE city SELECT * FROM world.city

带条件复制可以在后面加上where语句限制。

posted @ 2015-08-13 18:39  pepelu  阅读(310)  评论(0编辑  收藏  举报