U wilt een berekende kolom. Bijvoorbeeld:
CREATE TABLE tab1
(
ID INT IDENTITY(1,1)
,[Type] VARCHAR(10)
,IsValued AS CASE [Type] WHEN 'S' THEN 1
WHEN 'R' THEN 0
END
)
U kunt een bestaande tabel toevoegen met de volgende syntaxis:
ALTER TABLE dbo.tab1 ADD IsValued AS CASE [Type] WHEN 'S' THEN 1
WHEN 'R' THEN 0
END
U kunt de kolom persistent maken door het trefwoord PERSISTED
toe te voegen na het maken van de kolom. Het aanhouden van de kolom betekent dat het veld op schijf is opgeslagen. Wanneer u een record invoegt of bijwerkt, berekent SQL-server de waarde op dat moment. Als u dat niet doet, moet SQL Server dit elke keer dat u de rij opent, oplossen. Een goede uitleg is te vinden op SQL Server 2005 Computed Kolom blijft bestaan
ALTER TABLE dbo.tab1 ADD IsValued AS CASE [Type] WHEN 'S' THEN 1
WHEN 'R' THEN 0
END PERSISTED