2016-10-19 66 views
0

這裏更新查詢是我試圖運行更新:與多個子查詢

UPDATE oc_product_gpf SET 
brand = '(select name from oc_manufacturer where manufacturer_id= 
(select manufacturer_id from oc_product where product_id = oc_product_gpf.product_id))' 
WHERE oc_product_gpf.gpf_id =2454; 

我收到的錯誤是「#1406 - 數據太長,列‘品牌’第1行」

有什麼建議嗎?提前致謝!

+2

這不是子查詢。這是一個包含一些看起來像查詢的文本的STRING。但由於它是一個字符串,「有點看起來像SQL」不會被執行。刪除'''。 –

+0

請參閱http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-查詢 並嘗試解釋你實際正在做的事情。 – Strawberry

回答

2

您的子查詢在此處不作爲子查詢。它只是作爲一個字符串,並試圖分配到「品牌」列。請刪除''或將其轉換爲加入