read up on normalisation
understand what that is all about
break apart your data so that you have no repeating elements
So a ship is built
it stays in that configuration until its modified/rebuilt
if you need to track a ships name over time then that needs to be in a different entity.
never be tempted to duplicate data for what is theoretically the same entity
so it (may be) fine to say duplicate data for more than one ship built to the same design (but I'd suspect you should have detaisl for each ship)
its not fine to duplicate data if everything is the same except say the boat name
in the relation database world you tend to have one to zero,one or many relationships (ferinstance a shipping line may own zero, one or more vessels)
but the real world often has many to many relationships (ferinstance a vessel may over the course of its life have mulitple names, multiple owners, multiple configurations) a many to many relationship can be a pig in the realtional db word and its often implmented as an intersection table. you defienm an entity for vessesl, an entity for owners and an interesction tabel that holds all the relevant details to that vessel when owned by that owner.
think of an entity as a holding tank for one set of data
so you might have an entity for:-
owners_vessels (a so called intersection table that identifies what vessels are owned by which owners)
..so the problem is how do you handle the name change. do you store it as an attribute of say vessel details, does it deserve an entity of its own
but in principle
one row per vessel in vessels
one row per owner in owners
..the intersection table identifying the owners_vessels would hold everything pertinent to the vessel during the time of that ownership. so it will have
the PK from the owners table
the PK from the vessels table
say the date it was bought and anything else pertinent to that ownership (say amount paid), but you wouldn't neccesarily have an accquisition date AND disposal date as the disposal date is the next accquistion date.
but that then leaves the problem of vessel disposal (ie when the ship is sold to another owner, or is scrapped or is lost at sea.
a way of modellignthat is to, say, register a transfer of ownership to the releavnt category
ie if you knwo the yard it was scrapped in, record them as the new owners, or create a dummy owner. you coudl expand that dummy owner to identify the type of disposal by assiging a different dummy owner for each type
disposal:lost at sea, storm
disposal:act of war
I'd rather be riding on the Tiger 800 or the Norton