0
我正在存储一个简单的标记关系,我想知道什么是更好的方法来删除标记?MySQL从数据库中删除行
两种方式我所知道的:
- SELECT标记FROM content_tags WHERE 的content_id = 10
- 使用PHP与 提供了新的标签和比较的结果,如果有 任何标记从数据库 结果是不是在新的标签, 该标记运行删除查询
- 标签其余要么是新 或已经存在,所以我用INSERT INTO content_tags ...对重复 密钥更新
或者干脆:
- DELETE FROM content_tags FROM标签 WHERE的content_id = 10
- 将每个标签(无需使用ON DUPLICATE KEY UPDATE在这里为 此内容的标签为 此时已删除)
我目前正在做第一种方法,但第二种方法似乎没有什么麻烦。但我不确定是否以这种方式使用删除“不好”或效率低下。或者如果你有更好的方法可以随意分享。
我更担心删除的记录,也许你误解我了?例如,假设您将tag_id 1,3,5,7,9存储为content_id 10.现在我要更新标签并删除3和5,因此tag_id现在为1,7,9。所以我当然需要删除tag_id 3和5,但我需要使用php来比较它们,只需删除所有标记1,3,5,7,9然后插入1,7, 9代替。我只是想知道这是否对数据库不利? – Joker 2011-02-10 17:38:54