我有一个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