2012-06-22 44 views
9

我目前正試圖通過使用SELECT INTO查詢將表中的數據複製到另一個表中。 但我在SQL Server中收到錯誤。SQL SELECT INTO使用Join,Error進行查詢「數據庫中已有一個名爲'*****'的對象。」

「Msg 2714,Level 16,State 6,Line 2 數據庫中已經有一個名爲'Product'的對象。

我還是很新的sql。 這是我爲創建該作業而創建的SQL腳本。

BEGIN TRANSACTION 
SELECT d.[PDate] 
     ,d.[SDate] 
     ,d.[UseDRM] 
     ,d.[CreatedBy] 
     ,d.[CreatedDate] 
     ,d.[UpdatedBy] 
     ,d.[UpdatedDate] 
INTO [******].[dbo].[Product] 
FROM [******].[dbo].[ProductTypeData] AS d 
JOIN [******].[dbo].[Product] AS t 
ON d.ProductTypeDataID = t.ProductTypeDataID 
ROLLBACK TRANSACTION 

我已經在目標表中創建了這些列,但它們當前爲空。 任何幫助,不勝感激。

+1

SQL是一種語言。鑑於錯誤消息,我*猜測*您在SQL Server上並添加了該標籤。如果不正確,請修改您的標籤以指明您正在使用的數據庫產品。 –

回答

16

SELECT INTO用於根據您擁有的數據創建表。

由於您已經創建了表,所以您希望使用INSERT INTO。

E.g.

INSERT INTO table2 (co1, col2, col3) 
SELECT col1, col2, col3 
FROM table1 
+2

昨天我找到了你的解決方案,並感激地使用它。今天我又犯了同樣的錯誤,想知道我昨天是怎麼做到的,我用Google搜索了一遍,然後再次找到答案。會第二次upvote! :)) – rinukkusu

2

Select Into用於創建新表格。

取而代之的是您可以使用

INSERT INTO table1 (col1, col2, col3) 
SELECT col1, col2, col3 
FROM table2 
相關問題