我有一個MySQL表格,我在其中存儲一系列應用程序圖標(各種分辨率)作爲blob字段 - 每個表格行標識一個應用程序和六個圖標圖像。我的SQL語句是這樣的在PDO中重複條目上更新blob
INSERT INTO `appicons` (apid,apd16,apd57,apd72,apd114,apd128,apd144)
VALUES (:a,:b,:c,:d,:e,:f,:g);
這工作得很好。但鑑於每個appid
都是獨一無二的,我需要考慮是否需要更新應用程序圖標。所以我試了
INSERT INTO `appicons` (apid,apd16,apd57,apd72,apd114,apd128,apd144)
VALUES (:a,:b,:c,:d,:e,:f,:g) ON DUPLICATE KEY UPDATE apd16 = :bb;
不用說在每種情況下綁定適當的參數。但是,更新不會將預期的Blob數據添加到表中。相反,我在該blob字段中獲得1個字節的條目。
我如何做更新blob條目,因爲我需要在這裏做?
請向我們展示您的PDO代碼。 – 2012-07-23 13:28:41
「插入到'appicons'(apid,apd16,apd57,apd72,apd114,apd128,apd144)VALUES(:a,:b,:c,:d,:e,:f,:g)ON DUPLICATE KEY UPDATE apd16 =:bb「; $ stmt = $ dbh-> prepare($ sql); $ stmt-> bindParam(':a',$ sid); $ stmt-> bindParam(':b',$ imd ['16'],PDO :: PARAM_LOB); $ stmt-> bindParam(':bb',$ imd ['16'],PDO :: PARAM_LOB); $ stmt-> bindParam(':c',$ imd ['57'],PDO :: PARAM_LOB); $ stmt-> bindParam(':d',$ imd ['72'],PDO :: PARAM_LOB); $ stmt-> bindParam(':e',$ imd ['114'],PDO :: PARAM_LOB); $ stmt-> bindParam(':f',$ imd ['128'],PDO :: PARAM_LOB); $ stmt-> bindParam(':g',$ imd ['144'],PDO :: PARAM_LOB); – DroidOS 2012-07-23 13:33:24
在帖子裏,不是在這裏,我該怎麼讀? – 2012-07-23 13:34:04