【发布时间】:2013-03-23 15:17:34
【问题描述】:
我的 mysql 数据库中有以下场景。 2张桌子:
待办事项
- todo_id
- todo_title
todo_sync_controllers
- todo_sync_id
- device_id
- 应该删除
- is_deleted
- todo_id
如您所见,从 todoitems 到 todo_sync_controllers 是一对多的关系。
我使用 php 脚本与服务器通信。每次我从设备中提取待办事项时,我都需要确保该设备和待办事项有一个 todo_sync_controller 条目。如果缺少,则应创建它。
解决此问题的一种方法是使用我的 php 脚本中的循环和多个查询,但我想知道这是否可以使用单个 INSERT 查询来完成?有什么想法吗?
【问题讨论】:
-
为什么不创建一个唯一的 device_id 和 todo_id 键,然后每次都做一个插入查询呢?只有第一次查询才会成功。
-
所以基本上你想选择数据,如果存在其他明智的插入。
-
@somnath:插入语句看起来如何?这是否意味着我仍然需要遍历所有 todoitems 并为每个 todo_id 执行 INSERT 查询?
-
@PrashantShukla:我不需要选择 todo_sync_controller,如果该 device_id 和 todoitem 不存在,我只想插入它。