我正在努力解决一些我认为应该很容易解决的问题。
我首先检查数据库以查看它是否存在。我希望它插入日期,如果它不存在但我不知道如何构建IF语句部分。非常感谢
$date='2017-05-13';
$select_date = mysqli_query($link, "SELECT * from `marker` WHERE `date`='$date' ");
$insert_date = mysqli_query($link, "INSERT INTO `marker` (`date`,`value`) VALUES ('$date','1') ");
答案 0 :(得分:1)
通常,对于此类操作,您希望使用on duplicate key update
。这从一个唯一索引开始:
CREATE UNIQUE INDEX unq_marker_date ON marker(date);
然后数据库保证每个日期只有一行。然后,您可以将插入执行:
INSERT INTO `marker` (`date`, `value`)
VALUES ('$date', '1')
ON DUPLICATE KEY UPDATE `date` = VALUES(`date`);
ON DUPLICATE KEY
部分除了防止重复日期出错外,什么都不做。