【发布时间】:2011-10-27 08:41:06
【问题描述】:
我对 php/mysql 还很陌生,这是我从一开始就第一个真正的个人项目。我正在为 apache/php 上的 mysql 中的库创建一个数据库,但我在数据库的结构和组织方面遇到了一些问题。 我有以下表格:
- Books 包含每本书的信息
- 标签 - tagid 和标签名称(例如 301:悬念、302:犯罪、303:神秘)
- Booktags 与每本书关联的标签(例如 Bookid 27 TagId 301、BookId 27、tagId 302)
然后用户可以按标签搜索书籍(我查询 Booktags 表并找到与特定标签关联的所有书籍。
在输入或更新图书信息时,用户输入标签列表(逗号分隔)或从预定义的弹出列表中进行选择。
我现在来讨论更新信息的问题。如果用户选择更改为一本书定义的现有标签,我想删除不再需要的标签。我是否应该根据新列表检查现有标签并删除不相关的标签?还是删除与这本书相关的所有标签并只插入相关的标签更好(假设在某些情况下我会删除并重新插入相同的东西)?
任何建议都将不胜感激(如果您认为我以愚蠢或低效的方式处理事情,请提出一种更好的方法)
【问题讨论】: