2015-04-15 79 views
2

數據庫複製行,我可以在我的數據庫複製的行這樣的:與主鍵不同

INSERT into `product` (productCode, title, description, price, productGroup) 
    SELECT productCode, title, description, price, productGroup 
    FROM `product` 
WHERE productCode = $_GET['id'] 

但我想productCode是一個不同的到我從複製的行。我希望它是:$productCode

我該怎麼做?

+0

做到這一點你的代碼工作? – Alex

+0

沒有因爲'productCode'是唯一 – maxisme

+0

獨特的自動遞增? – Alex

回答

0

您可以更改產品代碼值需要

INSERT into `product` (productCode, title, description, price, productGroup) 
SELECT 'your product code value' AS productCode, title, description, price, productGroup 
FROM `product` 
WHERE productCode = ".$_GET['id'] 
+0

是'AS productCode'真正需要的,因爲它是在'定義。 .. \'product \'(productCode,...'? – Sean

+0

@Sean不需要它的只是一個別名的值 –

0

什麼都可以將其寫入insert

INSERT into `product` (productCode, title, description, price, productGroup) 
    SELECT $productCode, title, description, price, productGroup 
    FROM `product` 
WHERE productCode = $_GET['id']; 

我會建議你使用參數這和id,如果你是從應用程序代碼調用這個。

+0

我得到錯誤'未知列'$ productCode'in'子句'' – maxisme

+0

@Maximilian在這個答案中的where子句中沒有'$ productCode' –

+0

這是實際輸入INSERT into product(productCode,title,description,price,productGroup)SELECT'GH877',title,description,價格,productGroup從產品\t WHERE productCode = ML292'和輸出是#1054 - 'where子句'中的未知列'ML292' – maxisme

0

這將工作:

INSERT into `product` ($productCode, title, description, price, productGroup) 
    SELECT productCode, title, description, price, productGroup 
    FROM `product` 
WHERE productCode = $_GET['id'] 
-1

不喜歡它:

INSERT into `product` (productCode, title, description, price, productGroup) 
SELECT "$productCode", title, description, price, productGroup 
FROM `product` 
WHERE productCode = ".$_GET['id'] 
+1

這將更有助於解釋你的答案和它在做什麼:) – Emil

+0

@Emil最好想一想:) –

+1

@Eima不,它確實不是。這是一個問答網站,人們來這裏學習。他們可能會得出錯誤的結論,或根本沒有結論。毫無疑問,你最好解釋一下。 – Tyrsius

0
INSERT into `product` (productCode, title, description, price, productGroup) 
    SELECT $productCode, title, description, price, productGroup 
    FROM `product` p 
    WHERE p.productCode = $_GET['id']; 
+5

如果你能解釋這對海報做了什麼,它會更有幫助:) – Emil

0

$ _GET [ '身份證']必須字符串。包裝標識有「或」

'INSERT into product (productCode, title, description, price, productGroup) SELECT'.$productCode.', title, description, price, productGroup FROM product WHERE productCode = "'.$_GET['id'].'"'; 
+1

解釋你的答案可以讓別人學習而不是重現。 – Emil