Sto lavorando a un progetto che richiede l'assegnazione di numeri ID ai record relativi alle persone in un database. Ogni persona può avere molti record associati al proprio numero ID.
Si è discusso se fosse desiderabile avere informazioni su ogni persona codificata nel proprio numero ID. Ad esempio, il numero ID potrebbe essere [prima aggiunta di una persona (4 cifre)] [numero dello stato in cui è stata aggiunta per la prima volta (2 cifre)] [contatore sequenziale (4 cifre)], come 2016010002
. In alternativa, potrebbe non contenere alcun contenuto semantico.
Da un lato potrebbe essere bello per il buon senso controllare che possiamo assicurarci che il numero ID corrisponda ai dati in ogni campo, ed è più facile ricordare un ID se lo si desidera. D'altra parte, se qualcosa nel record dovesse cambiare, potremmo dover decidere se cambiare l'ID della persona, che potrebbe causare problemi.
Quali sono i lati negativi e negativi di includere informazioni sul record nel numero ID? Quando è preferito ciascun approccio?