2013-10-18 74 views
1

我有兩個表,他們都有第一列作爲PRIMARY這也是一個自動遞增。第一個表格有67個條目,從1到67,第二個表格有48個條目。他們都有相同的列。我想從Table2中獲取內容並將它們插入到Table1中,以便Table1中的下一個條目從68開始。最後,我將在Table1中有115個條目,並且PRIMARY列也會顯示該內容。我嘗試這樣做:加入2個表具有相同的主鍵也是自動增量

INSERT INTO `Table1` SELECT * FROM `Table2` 

但它表示

#1062 - Duplicate entry '1' for key 'PRIMARY' 

我該怎麼辦?

回答

5

名稱要插入,然後從插入

INSERT INTO `Table1` (col2, col3, col4) 
select col2, col3, col4 from `table2` 
3

您需要指定您希望進入列離開auto_incrment列列,沒有標識列。

喜歡的東西

INSERT INTO `Table1` (column1, column2,...,columnn) 
SELECT column1, column2,...,columnn FROM `Table2` 
0
SET IDENTITY_INSERT database_name.schema_name.table ON 

--Do Insert Here 

SET IDENTITY_INSERT database_name.schema_name.table OFF 

確保沒有重複的ID思想。

See this page

-1

嘗試這個...

INSERT INTO Table1 (col2, col3,...) 
select col2, col3,... from Table2 

你可以列數爲n做... 在這裏,你需要在指定的列名要插入其他數據比標識列(自動遞增列)。

相關問題