php - PHP - 在数据库中,如何在添加时避免重复条目

96 1

如何在日期数据库中避免添加重复项?

这是Price table的结构


id date_created Value is_active


1 2019-10-01 1:00:00 25 0


2 2019-10-05 2:00:00 30 0




但是假设用户为价格表添加了重复数据,就像这样。

2019-10-05 3:00:00

有什么方法可以做到这一点?

时间: 原作者:

132 5

我建议你按以下步骤操作:

  • 创建新的DATETIME列date_time_created
  • 将date_created转换为日期,并将它保存为日期

    例如, $date = date('Y-m-d', strtotime($yourDateTime));

  • date_created设置为唯一索引:

    CREATE UNIQUE INDEX date_created ON Price(date_created);


INSERT INTO Price


(Value, date_created, date_time_created, is_active)


VALUES


('$theValue', '$date', '$dateTime', 1)


ON DUPLICATE KEY UPDATE is_active = 0



原作者:
104 4

你可以先尝试获取特定日期的条目,然后更新,否则插入。

你还应该将date_created列设置为UNIQUE

原作者:
94 0

查询表并检查该日期是否存在且 is_actice = 1,然后使用结果更新现有的行

原作者:
...