--Migration CREATE TABLE [dbo].T_TANULOTANTARGYATLAG ( ID int NOT NULL IDENTITY(1,1), C_ATLAG AS (CAST(IIF(C_OSZTALYZATSZAMA = 0, 0.0, 1.0 * C_OSZTALYZATOSSZEGE / C_OSZTALYZATSZAMA) AS NUMERIC(10,2))), C_OSZTALYZATOSSZEGE int NOT NULL, C_OSZTALYZATSZAMA int NOT NULL, C_SULYOZOTTATLAG AS (CAST(IIF(C_OSZTALYZATSZAMA = 0, 0.0, 1.0 * C_SULYOZOTTOSZTALYZATOSSZEGE / C_SULYOZOTTOSZTALYZATSZAMA) AS NUMERIC(10,2))) PERSISTED, C_SULYOZOTTOSZTALYZATOSSZEGE int NOT NULL, C_SULYOZOTTOSZTALYZATSZAMA int NOT NULL, C_TANTARGYID int NOT NULL, C_TANULOID int NOT NULL, C_INTEZMENYID int NOT NULL, C_TANEVID int NOT NULL, TOROLT char(1) NOT NULL DEFAULT 'F', SERIAL int DEFAULT 0 NOT NULL, LASTCHANGED datetime DEFAULT GETDATE() NOT NULL, CREATED datetime DEFAULT GETDATE() NOT NULL, MODIFIER int NULL, CREATOR int NULL, CONSTRAINT PK_TanuloTantargyAtlag PRIMARY KEY (ID) ) GO -- Generált indexek CREATE INDEX NCI_TanuloTantargyAtlag_TantargyId ON T_TANULOTANTARGYATLAG (C_TANTARGYID) GO CREATE INDEX NCI_TanuloTantargyAtlag_TanuloId ON T_TANULOTANTARGYATLAG (C_TANULOID) GO CREATE INDEX NCI_TanuloTantargyAtlag_IntezmenyId ON T_TANULOTANTARGYATLAG (C_INTEZMENYID) GO CREATE INDEX NCI_TanuloTantargyAtlag_TanevId ON T_TANULOTANTARGYATLAG (C_TANEVID) GO -- Generált FK-k ALTER TABLE [DBO].T_TANULOTANTARGYATLAG ADD CONSTRAINT FK_TanuloTantargyAtlag_TantargyId_REF_Tantargy FOREIGN KEY (C_TANTARGYID) REFERENCES [DBO].T_TANTARGY (ID) GO ALTER TABLE [DBO].T_TANULOTANTARGYATLAG ADD CONSTRAINT FK_TanuloTantargyAtlag_TanuloId_REF_Tanulo FOREIGN KEY (C_TANULOID) REFERENCES [DBO].T_TANULO (ID) GO ALTER TABLE [DBO].T_TANULOTANTARGYATLAG ADD CONSTRAINT FK_TanuloTantargyAtlag_IntezmenyId_REF_Intezmeny FOREIGN KEY (C_INTEZMENYID) REFERENCES [DBO].T_INTEZMENY (ID) GO ALTER TABLE [DBO].T_TANULOTANTARGYATLAG ADD CONSTRAINT FK_TanuloTantargyAtlag_TanevId_REF_Tanev FOREIGN KEY (C_TANEVID) REFERENCES [DBO].T_TANEV (ID) GO -- CLUSTERED index megváltoztatása ALTER TABLE T_TANULOTANTARGYATLAG DROP CONSTRAINT IF EXISTS FK_TanuloTantargyAtlag_TanuloId_REF_Tanulo; GO ALTER TABLE T_TANULOTANTARGYATLAG DROP CONSTRAINT IF EXISTS FK_TanuloTantargyAtlag_TantargyId_REF_Tantargy; GO ALTER TABLE T_TANULOTANTARGYATLAG DROP CONSTRAINT IF EXISTS PK_TanuloTantargyAtlag; GO IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'CU_TanuloTantargyAtlag_TanuloId_TantargyId') BEGIN CREATE UNIQUE CLUSTERED INDEX CU_TanuloTantargyAtlag_TanuloId_TantargyId ON T_TANULOTANTARGYATLAG (C_TANULOID, C_TANTARGYID) WITH (FILLFACTOR = 80) END GO IF OBJECT_ID('PK_TanuloTantargyAtlag') IS NULL BEGIN ALTER TABLE T_TANULOTANTARGYATLAG ADD CONSTRAINT PK_TanuloTantargyAtlag PRIMARY KEY (ID); END GO DROP INDEX IF EXISTS NCI_TanuloTantargyAtlag_TanuloId ON T_TANULOTANTARGYATLAG GO ALTER TABLE [DBO].T_TANULOTANTARGYATLAG ADD CONSTRAINT FK_TanuloTantargyAtlag_TantargyId_REF_Tantargy FOREIGN KEY (C_TANTARGYID) REFERENCES [DBO].T_TANTARGY (ID) GO ALTER TABLE [DBO].T_TANULOTANTARGYATLAG ADD CONSTRAINT FK_TanuloTantargyAtlag_TanuloId_REF_Tanulo FOREIGN KEY (C_TANULOID) REFERENCES [DBO].T_TANULO (ID) GO -- View-k létrehozása EXEC dev.uspCreateSchemaViews 'T_TANULOTANTARGYATLAG' GO -- audit trigger nem kell a táblához