我想将数据从一个名为domains的数据库复制到另一个数据库,该数据库也有一个名为domains的表。
我尝试过使用phpmyadmin但是它不会因为Auto_increment值而复制。它只是不会被复制到另一个database.table。
我想知道在这方面可以做些什么?我也不想将旧的ID(auto_increment)值从第一个数据库复制到另一个数据库。
phpmyadmin回复。
#1136 - Column count doesn't match value count at row 1
这两个结构在数据库中是相同的。
我的查询。
INSERT INTO `site1`.`domains`
SELECT * FROM `site33`.`domains`
^这很多都是固定的。 现在出现了我得到的auto_increment问题:
#1062 - Duplicate entry '1' for key 'PRIMARY'
答案 0 :(得分:9)
你可以这样做:
INSERT INTO database2.table1 (field2,field3)
SELECT table2.field2,table2.field3
FROM table2;
注意:强> 不要在insert和select语句中包含自动增量的列。
答案 1 :(得分:1)
您正在使用具有错误数量值的insert语句,例如:
对于包含a
,b
和c
列的表格,这些都无效:
INSERT INTO YourTable VALUES (1, 2);
INSERT INTO YourTable(b, c) VALUES (1, 2, 3);
INSERT INTO YourTable(a, b, c) VALUES (2, 3);
列列表中的列数必须与值列表中的值数相匹配。
您可以只省略列列表,但前提是您为每列指定一个值,并按表中列的存在顺序。不过,这是不好的做法。最好始终指定所需的确切列。