我试图在查询中同时使用REPLACE和SET,而没有任何成功!
错误消息:
Unknown system variable 'c3'
我做错什么了?
$query = "SET NEW.c3 = CONCAT(OLD.c3, NEW.:c3);
REPLACE INTO table(
c1,
c2,
c3)
VALUES(
:c1,
:c2,
:c3)";
$query_params = array(
':c1' => $c1,
':c2' => $c2,
':c3' => $c3); 发布于 2014-12-03 11:00:01
我的猜测是,您希望插入新行或更新现有行(如果该行已存在于表中)。如果是这样,那么正确的查询是:
INSERT INTO table(c1, c2, c3) VALUES
(:c1, :c2, :c3)
ON DUPLICATE KEY UPDATE
c3 = CONCAT(c3, :c3);或者,如果您想一次插入/更新多个行:
INSERT INTO table(c1, c2, c3) VALUES
(:c1, :c2, :c3),
(:d1, :d2, :d3),
(:e1, :e2, :e3)
ON DUPLICATE KEY UPDATE
c3 = CONCAT(c3, VALUES(c3));https://stackoverflow.com/questions/27269540
复制相似问题