SQL Server 2005 colonna calcolata viene mantenuto
-
06-09-2019 - |
Domanda
Ho alcune colonne calcolate in un tavolo e bisogno di sapere se devo impostare viene mantenuto su true. Quali sono i vantaggi? Ci sono svantaggi? Cosa significa 'viene mantenuto' dire?
Soluzione
"insistette" significa "memorizzato fisicamente" in questo contesto.
Ciò significa che il valore calcolato viene calcolato volta sull'inserto (e aggiornamenti) e memorizzato su disco, in modo che non deve essere calcolato nuovamente su ogni prescelto.
persistenti In provoca anche una riduzione delle prestazioni su inserimento e aggiornamento, dal momento che la colonna deve essere calcolata, ma aumenterà le prestazioni su query successive selezionate.
Quindi, dipende dal vostro tipo di utilizzo, quale approccio da seguire: se si aggiorna di rado, ma interrogare un sacco, è necessario impostare persistito = true.
Se si aggiornano di frequente, o se non si preoccupano le prestazioni di recupero, si dovrebbe considerare l'impostazione persisteva = false
Altri suggerimenti
Una cosa non menzionata in altre risposte: una colonna calcolata deve essere reso persistente per essere utilizzabile da chiavi esterne
.