gpt4 book ai didi

mysql - 在重复键更新错误时插入到 tbl

转载 作者:行者123 更新时间:2023-11-29 04:38:35 24 4
gpt4 key购买 nike

我有以下查询,如果它不存在,我想将其修改为 INSERT into tbl,如果存在,我想将其修改为 UPDATE。

$sql = "UPDATE tbldata temperature = ?, temperature_feels = ?, humidity = ?, precipitation = ? WHERE id = ?";

我正在尝试以下操作,但到目前为止没有任何乐趣 - 我的以下查询有什么问题?

$sql = "INSERT INTO tbldata (temperature, temperature_feels, humidity, precipitation) ON DUPLICATE KEY UPDATE id = ?, temperature = ?, temperature_feels = ?, humidity = ?, precipitation = ?";

-- 更新--这不起作用...我做错了什么?

       $sql = "INSERT INTO weather_data (uv, weather_status, weather_type, temperature, temperature_feels, humidity, precipitation)
VALUES (?,?,?,?,?,?,?)
ON DUPLICATE KEY UPDATE
uv = ?,
weather_status = ?,
weather_type = ?,
temperature = ?,
temperature_feels = ?,
humidity = ?,
precipitation = ?
UID = ?";

-- 更新--我的模式

'UID', 'char(17)', 'NO', 'PRI', NULL, ''
'stationID', 'int(11)', 'YES', '', NULL, ''
'temperature', 'float', 'YES', '', NULL, ''
'UV', 'float', 'YES', '', NULL, ''
'temperature_feels', 'float', 'YES', '', NULL, ''
'humidity', 'float', 'YES', '', NULL, ''
'weather_type', 'int(11)', 'YES', '', '-1', ''
'precipitation', 'float', 'YES', '', NULL, ''
'update_station_id', 'tinyint(4)', 'YES', '', '1', ''
'update_due', 'timestamp', 'YES', '', NULL, ''
'weather_status', 'varchar(128)', 'YES', '', NULL, ''

最佳答案

您忘记在insert query 中写入values

$sql = "INSERT INTO tbldata (temperature, temperature_feels, humidity,precipitation)  
VALUES (?,?,?,?)
ON DUPLICATE KEY UPDATE
id = ?,
temperature = ?,
temperature_feels = ?,
humidity = ?,
precipitation = ?";

更多信息链接 http://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html

关于mysql - 在重复键更新错误时插入到 tbl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35085895/

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