gpt4 book ai didi

mysql - INSERT 或 UPDATE 不是 mysql 中的主列

转载 作者:太空宇宙 更新时间:2023-11-03 12:33:36 25 4
gpt4 key购买 nike

我有一个包含以下列的表格

id -> VARCHAR (PRIMARY KEY)
data -> TEXT
user_id -> VARCHAR

如果行不存在,我想插入到这个表中。否则更新 data 列并保持其他一切不变。目前我正在做这个

REPLACE INTO collat​​e(id,user_id,data)VALUE('$id','$user_id','$data')。但这会删除一行(如果找到)然后再次插入。服务器密集型

最佳答案

根据 REPLACE Syntax 记录:

REPLACE is a MySQL extension to the SQL standard. It either inserts, or deletes and inserts. For another MySQL extension to standard SQL—that either inserts or updates—see Section 13.2.5.3, “INSERT ... ON DUPLICATE KEY UPDATE Syntax”.

因此:

INSERT INTO collate
(id, user_id, data)
VALUES
('$id','$user_id','$data')
ON DUPLICATE KEY UPDATE
data = VALUES(data)

关于mysql - INSERT 或 UPDATE 不是 mysql 中的主列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14292867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com