【问题标题】:How to update many-to-many table: delete, delete all, insert, reinsert如何更新多对多表:删除、全部删除、插入、重新插入
【发布时间】:2011-10-27 08:41:06
【问题描述】:

我对 php/mysql 还很陌生,这是我从一开始就第一个真正的个人项目。我正在为 apache/php 上的 mysql 中的库创建一个数据库,但我在数据库的结构和组织方面遇到了一些问题。 我有以下表格:

  1. Books 包含每本书的信息
  2. 标签 - tagid 和标签名称(例如 301:悬念、302:犯罪、303:神秘)
  3. Booktags 与每本书关联的标签(例如 Bookid 27 TagId 301、BookId 27、tagId 302)

然后用户可以按标签搜索书籍(我查询 Booktags 表并找到与特定标签关联的所有书籍。

在输入或更新图书信息时,用户输入标签列表(逗号分隔)或从预定义的弹出列表中进行选择。

我现在来讨论更新信息的问题。如果用户选择更改为一本书定义的现有标签,我想删除不再需要的标签。我是否应该根据新列表检查现有标签并删除不相关的标签?还是删除与这本书相关的所有标签并只插入相关的标签更好(假设在某些情况下我会删除并重新插入相同的东西)?

任何建议都将不胜感激(如果您认为我以愚蠢或低效的方式处理事情,请提出一种更好的方法)

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    只需删除每个标签并插入新闻。 这将花费更少的时间和更少的能量

    【讨论】:

      猜你喜欢
      • 2012-03-23
      • 1970-01-01
      • 2015-04-26
      • 2011-11-29
      • 1970-01-01
      • 2014-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多