问题:要复制一张表中的部分字段到一张新表中去,并在新表中新增一个字段id,自动增加。
1.首先想到的是用select into,但是MYSQL不支持这一语法
MYSQL不支持:
Select * Into new_table_name from old_table_name;
替代方法:
Create table new_table_name (Select * from old_table_name);
Create table `sina20090712` (SELECT `title` , `time` , `original` , `content` , `author`
FROM `sinapl_article`
ORDER BY `sinapl_article`.`time` ASC);
2.然后将这一表备份为sql文件,然后修改这一sql文件头部建立表结构的语句,增加一句
DROP TABLE IF EXISTS `sina20090712`;
CREATE TABLE `sina20090712` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(100) NOT NULL,
`time` varchar(20) DEFAULT NULL,
`original` varchar(20) DEFAULT NULL,
`content` text,
`author` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
注:红色部分为新增加的
1.首先想到的是用select into,但是MYSQL不支持这一语法
MYSQL不支持:
替代方法:
Create table `sina20090712` (SELECT `title` , `time` , `original` , `content` , `author`
FROM `sinapl_article`
ORDER BY `sinapl_article`.`time` ASC);
2.然后将这一表备份为sql文件,然后修改这一sql文件头部建立表结构的语句,增加一句
DROP TABLE IF EXISTS `sina20090712`;
CREATE TABLE `sina20090712` (
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
注:红色部分为新增加的