复制表mysql

问题描述:

我是新手到sql advance,我想通过从另一个选择插入行到一个表。但是一些错误即将出现。复制表mysql

这里是我的问题
所以我有两个表

table1 having id(autoincrement), names 
table2 having id(autoincrement), names 

现在,在开始表1是空的,并具有2行

1,'myself' 
2,'yourself' 

表2所以这里的问题开始
当我执行以下查询

Insert into table1 (names) select (names) from table2 

所以现在table2的两行必须复制到table1 Ya其工作正常。
但是,ID的自动增量值呢? 通过至今table1的自动增量ID应该存储3,因为下一行插入应该有编号3

但它不工作像预期的那么table1的自动增量ID店4即1(current id value)+2*(no of rows inserted)-1 当我执行相同的查询将其插入因此,下一次用id 4行。跳过id = 3。 这是问题希望你都得到了我所说的。

感谢您提前帮忙。

试试这个 INSERT INTO TABLE1 SELECT * FROM TABLE2

继续前进的拷贝数据过来,然后你可以修改为您所选择的开始auto_inc。

ALTER TABLE table AUTO_INCREMENT = 1000; 

Alter Table将花费大约1秒,因为它首先创建表的阴影,然后查询被处理,如果没有。一排排桌子在上面,那么它可能需要大约20-30秒。所以我不认为这个问题更好。希望有人会帮助你插入命令,如: 插入表1设置id = 1; etc ...