﻿--Migration

EXEC dev.uspDropDefaultConstraint @pTableName = 'T_OSZTALYCSOPORT', @pColumnName = 'C_FeladatKategoriaId'
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_SZERVEZET', @pColumnName = 'C_SZEKHELY'

GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_IntezmenyId_TanevId_FeladatKategoriaId]...';


GO
DROP INDEX [NCI_OsztalyCsoport_IntezmenyId_TanevId_FeladatKategoriaId]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_TanevId_IntezmenyId_FeladatKategoriaId]...';


GO
DROP INDEX [NCI_OsztalyCsoport_TanevId_IntezmenyId_FeladatKategoriaId]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_FeladatEllatasiHelyId]...';


GO
DROP INDEX [NCI_OsztalyCsoport_FeladatEllatasiHelyId]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_IntezmenyId_TanevId_EvfolyamTipusa]...';


GO
DROP INDEX [NCI_OsztalyCsoport_IntezmenyId_TanevId_EvfolyamTipusa]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_IntezmenyId_TanevId_KepzesiForma]...';


GO
DROP INDEX [NCI_OsztalyCsoport_IntezmenyId_TanevId_KepzesiForma]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_IntezmenyId_TanevId_MuveszetiAgId]...';


GO
DROP INDEX [NCI_OsztalyCsoport_IntezmenyId_TanevId_MuveszetiAgId]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Index [dbo].[T_OSZTALYCSOPORT].[NCI_OsztalyCsoport_IntezmenyId_TanevId_ZenemuveszetiAgTipusId]...';


GO
DROP INDEX [NCI_OsztalyCsoport_IntezmenyId_TanevId_ZenemuveszetiAgTipusId]
    ON [dbo].[T_OSZTALYCSOPORT];


GO
PRINT N'Dropping Foreign Key [dbo].[FK_OsztalyCsoport_FeladatKategoriaId_IntezmenyId_TanevId_REF_OktNevelesiKategoria]...';


GO
ALTER TABLE [dbo].[T_OSZTALYCSOPORT] DROP CONSTRAINT [FK_OsztalyCsoport_FeladatKategoriaId_IntezmenyId_TanevId_REF_OktNevelesiKategoria];


GO
PRINT N'Dropping Foreign Key [dbo].[FK_OsztalyCsoport_FeladatEllatasiHelyId_REF_FeladatEllatasiHely]...';


GO
ALTER TABLE [dbo].[T_OSZTALYCSOPORT] DROP CONSTRAINT [FK_OsztalyCsoport_FeladatEllatasiHelyId_REF_FeladatEllatasiHely];


GO
ALTER TABLE [dbo].[T_OSZTALYCSOPORT] ALTER COLUMN [C_FELADATKATEGORIAID] INT NULL;


GO
PRINT N'Altering Table [dbo].[T_SZERVEZET]...';


GO
ALTER TABLE [dbo].[T_SZERVEZET] DROP COLUMN [C_SZEKHELY];


GO
ALTER TABLE [dbo].[T_SZERVEZET]
    ADD [C_SZERVEZETCIM]          NVARCHAR (500) NULL,
        [C_DUALISHELYSZINTIPUSID] INT            NOT NULL,
        [C_PARENTSZERVEZETID]     INT            NULL;


GO
PRINT N'Creating Foreign Key [dbo].[FK_OsztalyCsoport_FeladatKategoriaId_IntezmenyId_TanevId_REF_OktNevelesiKategoria]...';


GO
ALTER TABLE [dbo].[T_OSZTALYCSOPORT] WITH NOCHECK
    ADD CONSTRAINT [FK_OsztalyCsoport_FeladatKategoriaId_IntezmenyId_TanevId_REF_OktNevelesiKategoria] FOREIGN KEY ([C_FELADATKATEGORIAID], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_OKTNEVELESIKATEGORIA] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);


GO
PRINT N'Checking existing data against newly created constraints';


GO
ALTER TABLE [dbo].[T_OSZTALYCSOPORT] WITH CHECK CHECK CONSTRAINT [FK_OsztalyCsoport_FeladatKategoriaId_IntezmenyId_TanevId_REF_OktNevelesiKategoria];


EXEC dev.uspCreateSchemaViews 'T_OSZTALYCSOPORT, T_SZERVEZET'
EXEC dev.sp_Global_GenerateAsyncAuditTriggerAll
GO
PRINT N'Update complete.';


GO
