【发布时间】:2010-07-09 18:57:56
【问题描述】:
我有一个包含项目(id、名称等)的表,我希望某种数据库方案能够拥有项目的多个副本,同时仍然能够增加 id。会有一个名为 startdate 或 date_from_which_this_entry_should_be_used 的字段。
我想到了两种实现方式:
-
有一个只有 ids(主键,自动增量)的表,并连接到一个包含所有项目信息的表。
优点:
- 简单易懂
- 很难让追我的人感到困惑
缺点:
- 需要更多的调试和编码,因为该系统已经在使用中
- 只有一个字段的表格似乎很奇怪
-
有一个使用子选择的表来获取 MAX 值 (+1) 以应用于新项目。
优点:
- 单表
- 只有很小的代码调整(但可能不是完全不同)
缺点:
- 容易出错(手动增量,不允许删除或 MAX 值可能已关闭)
提前致谢!
【问题讨论】:
标签: mysql auto-increment