I have a table with items in it (id, name, etc) and I want some kind of database scheme to be able to have multiple copies of the item while still being able to increment the ids. There will be a field called startdate or date_from_which_this_entry_should_be_used.
I've thought of two ways of implementing this:
Have a table with only ids (primary key, auto-increment) and do joins to a table that has all the item information.
Advantages:
- easy to understand
- hard for someone that comes after me to get confused
Disadvantages:
- requires more debugging and coding since this system is already in use
- seems weird to have a table with a single field
Have a single table using a sub-select to get the MAX value (+1) to apply to new items.
Advantages:
- single table
- only minor code adjustments (but not all that different, maybe)
Disadvantages:
- prone to errors (manual increment, can't allow deletions or the MAX value might be off)
Thanks in advance!