Vado via ID o etichetta durante la programmazione?

2

Supponiamo di avere una tabella "Progress" con due colonne. Una colonna è ID che è identità. Un'altra colonna è Progress_Label

ID Progress_Label

1 Inviato

2 Approvato dall'utente

3 Respinto dalla leadership

4 Annullato

5 completato

Qual è la migliore pratica di programmazione , dovrei passare per ID o per etichetta? Nelle mie stored procedure, funzioni, o nei metodi di programmazione dei codici, ecc. Dovrei cercare i record con ID = 3 o dovrei digitare "Dove progress_lable è Rifiutato dalla leadership"?

Se qualcuno volesse modificare le etichette, tutto il codice smetterebbe di funzionare se vado accanto all'etichetta?

Allo stesso tipo se scrivo l'etichetta, il codice sembra più comprensibile dal momento che dice proprio nel codice che cosa stiamo cercando?

Ci sono articoli riguardo questo?

    
posta Web Girl 21.06.2013 - 03:19
fonte

2 risposte

10

Usa l'ID.

L'etichetta cambia, a volte, e per il codice leggibile dall'uomo puoi semplicemente usare cose come enumerazioni:

enum DocumentProgress
{
    Submitted = 1,
    Approved by user = 2,
    Rejected by leadership = 3,
    Cancelled = 4,
    Completed = 5
}

Che potrebbe essere usato in questo modo:

Item.Progress = DocumentProgress.Submitted;
    
risposta data 21.06.2013 - 03:47
fonte
-1

Crea un metodo chiamato GetProgressIdByLabel in modo che tu possa fare qualcosa di simile

int progressId = GetProgressIdByLabel("Submitted")

Questo si legge bene, il tuo metodo dovrebbe generare un'eccezione se qualcuno usa un'etichetta che non esiste

    
risposta data 21.06.2013 - 03:26
fonte

Leggi altre domande sui tag