Ho alcune colonne calcolate in una tabella e ho bisogno di sapere se dovrei impostare Persistato su true. Quali sono i vantaggi? Ci sono degli svantaggi? Cosa significa "Persistato"?La colonna calcolata di SQL Server 2005 è persistente
risposta
"Persistato" significa "memorizzato fisicamente" in questo contesto.
Significa che il valore calcolato viene calcolato una volta sull'inserto (e sugli aggiornamenti) e memorizzato su disco, quindi non deve essere calcolato nuovamente su ogni selezione.
Persistente causa anche una penalizzazione delle prestazioni su inserimento e aggiornamenti, poiché la colonna deve essere calcolata, ma aumenterà le prestazioni nelle query di selezione successive.
Quindi, dipende dal modello di utilizzo, che approccio da seguire: se si aggiorna raramente, ma si esegue una query molto, è necessario impostare persisted = true.
Se si aggiornano di frequente, o se non si preoccupano le prestazioni di recupero, si dovrebbe considerare l'impostazione persisteva = false
Una cosa non menzionata in altre risposte: una colonna calcolata deve essere reso persistente per essere utilizzabile da ESTERO Keys.