gpt4 book ai didi

PHP MySQL 插入忽略多个主键

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

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| Destina | Sender | StartTime | EndTime | Created |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 0877222 | 2100 | 10132014010456 | 10132014010459 | 2014-10-13 10:35:46 |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 0877222 | 2100 | 10132014010456 | 10132014010459 | 2014-10-13 10:35:46 |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 0888333 | 4100 | 10132014010433 | 10132014010443 | 2014-10-13 10:35:46 |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 0888333 | 4100 | 10132014010433 | 10132014010443 | 2014-10-13 10:35:46 |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 0566666 | 3400 | 10132014010432 | 10132014010452 | 2014-10-13 10:35:46 |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
| 0566666 | 3400 | 10132014010432 | 10132014010452 | 2014-10-13 10:35:46 |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

我根据从某些 API 检索到的数据插入上表,防止“Destina”、“Sender”、“StartTime”、“EndTime”列中出现重复我使用MySQL INSERT IGNORE查询

这是我的代码:

$data = array(
'Destina' => $json['Destina'],
'Sender' => $json['Sender'],
'StartTime' => $json['StartTime'],
'EndTime' => $json['EndTime'],
'created' => date('Y-m-d H:i:s')
);

$redis_data = sprintf(
'INSERT IGNORE INTO my_table (%s) VALUES ("%s")',
implode(',',array_keys($data)),
implode('","',array_values($data))
);

$result = mysql_query($redis_data);

但是重复仍然发生,我该如何解决这个问题,我尝试将主键添加到上面的列,但我收到了此消息:

#1075 - 表定义不正确;只能有一个自动列,并且必须将其定义为键

谢谢

最佳答案

添加 UNIQUE 约束而不是尝试添加其他主键。您收到的消息意味着您已经有一个自动增量列,因此,如果您想添加主键,那么应该使用此 auto_increment 列。

关于PHP MySQL 插入忽略多个主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26332691/

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