我们小组最近在用mysql开发项目,但由于刚接触不久,还不太熟悉。想问下,
例如说,ABC三人用的是相同结构的mysql数据库,都各自部署在自己的机子上,一开始都是空的A队员在他自己的数据库里用户表里插入了一条记录,在他的数据库里这条记录的id是1(这列是自增长的主键列)B队员也在他自己的数据库用户表里插入了一条不同的记录,在他的数据库里这条记录ID当然也是1C队员就想合并项目,并保留这些数据,他希望A的那条记录不管ID为多少都在C的最后一条记录ID基础上加上,B的也同样在插完A的后再加1,也就是说忽略了原来的ID想做到这样,该怎么做呢?谢谢
例如说,ABC三人用的是相同结构的mysql数据库,都各自部署在自己的机子上,一开始都是空的A队员在他自己的数据库里用户表里插入了一条记录,在他的数据库里这条记录的id是1(这列是自增长的主键列)B队员也在他自己的数据库用户表里插入了一条不同的记录,在他的数据库里这条记录ID当然也是1C队员就想合并项目,并保留这些数据,他希望A的那条记录不管ID为多少都在C的最后一条记录ID基础上加上,B的也同样在插完A的后再加1,也就是说忽略了原来的ID想做到这样,该怎么做呢?谢谢
我自己用了mysqldump命令,但是导出来的文件里面有id字段,然而它不能插进另一个数据库表中
ALTER TABLE tbl AUTO_INCREMENT = 10000
orset auto_increment_increment = 10000
再导入数据。
第二种方法:逐条查出再插入。就是把被复制的表的数据查出来,但是不查ID,然后插入到接受表的对应字段上。(也很笨)。
ALTER TABLE tbl AUTO_INCREMENT = 10000
orset auto_increment_increment = 10000
再导入数据,用INSERT。
问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧)假设
A (id,uname)
1 'aaa'
2 'bbb'B (id,uname)
1 'ccc'
2 'ddd'合并后C (id,uname)
1 'aaa'
2 'bbb'
3 'ccc'
4 'ddd'
inset into C(uname) select uname from A;
inset into C(uname) select uname from B;
如是自增的话,直接插入