![](/img/trans.png)
[英]Updating a JSON file generated from Database to be manipulated with javascript
[英]Updating Database From Static File JSON Feed
我有一个PHP脚本来提取一个静态的JSON文件,并每10秒更新一次。 它具有发生的一些事件的详细信息,并且仅添加到JSON文件的顶部。 然后,我将它们插入MySQL数据库。
因为每次每次拉文件我都必须拉每个事件,所以我只会插入新事件。 一种简单的方法是在数据库中搜索事件(主键不相同),但是我每天谈论的事件约为4000个,因此我不希望有那么多查询来查看它是否存在。
我知道INSERT IGNORE
,但是看起来它仅使用PRIMARY_KEY
来执行此操作。
我该怎么做(最好是轻松地)以防止两个键重复?
例:
我有一个带有以下各列的表events
:
我的数据是我的JSON像这样在第一次提取时出现:
event_id|action_id|...
1 | 1
1 | 2
1 | 3
2 | 1
2 | 2
2 | 3
然后,下一个是:
event_id|action_id|...
1 | 1
1 | 2
1 | 3
1** | 4**
1** | 5**
2 | 1
2 | 2
2 | 3
2** | 4**
我只希望插入标有星号的行,而忽略其他行。 请记住, primary_key
列id
完全在此表中,我只是将其用于无处不在。
我可以使用什么命令来“插入”我拉出的每个事件,但只能通过两列event_id
和action_id
添加不会重复的事件。
谢谢。
创建两个列的唯一索引。
CREATE
UNIQUE INDEX event_action
ON tablename (event_id, action_id)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.