Brug indekser på beregnede kolonner i databasetabeller har visse fordele i behandlingen hastighed , men også kommer med nogle strukturelle ulemper . Mens refererer tabeller, hvis værdier er beregnet på flue kan du spare tid , da du ikke søger igennem unødvendige tabelfelter og spise op system ressourcer, kan kravene til den beregnede kolonner metoden være noget begrænsende. Ejerskab
ejerskabskravene af denne fremgangsmåde gør for enten mere restriktiv database adgang eller flere kodning på programmører del for mere ekspansiv adgang . For at bruge indekser på beregnede kolonner , skal ejeren af basen datatabel ejer også enhver funktion henvises i disse kolonner .
Dataprecisionen
De beregnede kolonne data, der returneres af denne metode skal opfylde visse præcisionskrav. Nemlig , kan dataene ikke være en floating-point decimal udtryk ( en datatype kaldet " Float "), et rigtig datatype eller en sammenligning datatype. Disse datatyper kan anvendes i en indekseret visning, men kan ikke virke som indekser på beregnede kolonner.
Determinisme
Data hentes ved at indeksere beregnede kolonner skal være deterministisk . Nemlig , kan metoden ikke udtrække data fra flere rækker ( dette betyder, at du ikke kan bruge funktioner som SUM og AVG ) og kan ikke indeholde system eller bruger - adgang til information . Det betyder også , at du ikke kan bruge dynamiske data : det samme sæt af inputs skal altid returnere den samme værdi
Datatyper
Denne beregnede kolonne data, der anvendes i denne metode. kan ikke være data af typer tekst, ntext eller billede.