gpt4 book ai didi

php - 插入时更新MySQL中的现有记录

转载 作者:行者123 更新时间:2023-11-29 11:21:21 27 4
gpt4 key购买 nike

我在 MySQL 数据库中有一个表,其中包含以下字段:

cid
number
date
code

cidnumber 是键。每天,来自另一个表的第一个 日期 的数据都会通过 php 脚本插入到该表中。code 字段在源表中是可更新的,如果在将记录插入到目标时代码发生了更改,我想更新目标表中的现有记录。我的意思是我不想将更新的数据作为新行插入,而是更新当前记录。

我该怎么做?

最佳答案

您可以使用 MySQL 的 INSERT INTO ... ON DUPLICATE KEY UPDATE 来完成此操作。

为此,您必须设置一个 UNIQUE 索引,以便 MySQL 产生错误(因为记录存在),然后它会移至 UPDATE 部分。

在你的例子中,我假设这个键是UNIQUE(cid, number, date)

给定您当前的表,查询将如下所示:

INSERT INTO your_table_name 

(cid, number, date, code)

VALUES

(1, 2, '2016-08-09', 'code')

ON DUPLICATE KEY SET code = 'code';

相应地调整列名称和值。

Documentation about ON DUPLICATE KEY UPDATE

关于php - 插入时更新MySQL中的现有记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38852334/

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