﻿PRINT N'Dropping Index [dbo].[T_FENNTARTO].[NCU_Fenntarto_Nev]...';


GO
DROP INDEX [NCU_Fenntarto_Nev]
    ON [dbo].[T_FENNTARTO];


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


GO
ALTER TABLE [dbo].[T_FENNTARTO] ALTER COLUMN [C_NEV] NVARCHAR (1000) NOT NULL;


GO
ALTER TABLE [dbo].[T_FENNTARTO]
    ADD [C_AZONOSITO]                    NVARCHAR (16)    /*NOT*/ NULL,
        [C_GUID]                         UNIQUEIDENTIFIER /*NOT*/ NULL,
        [C_LEGMAGASABBSZINTUFENNTARTOID] INT              NULL,
        [C_ISTESZTFENNTARTO]             CHAR (1)         DEFAULT ('F') NOT NULL;


GO
PRINT N'Creating Index [dbo].[T_FENNTARTO].[NCU_Fenntarto_Nev]...';


GO
CREATE UNIQUE NONCLUSTERED INDEX [NCU_Fenntarto_Nev]
    ON [dbo].[T_FENNTARTO]([C_NEV] ASC) WHERE ([TOROLT]='F');


GO
PRINT N'Creating Index [dbo].[T_FENNTARTO].[NCU_Fenntarto_Azonosito]...';


GO
CREATE UNIQUE NONCLUSTERED INDEX [NCU_Fenntarto_Azonosito]
    ON [dbo].[T_FENNTARTO]([C_AZONOSITO] ASC) WHERE ([TOROLT]='F');


GO
PRINT N'Creating Index [dbo].[T_FENNTARTO].[NCU_Fenntarto_Guid]...';


GO
CREATE UNIQUE NONCLUSTERED INDEX [NCU_Fenntarto_Guid]
    ON [dbo].[T_FENNTARTO]([C_GUID] ASC) WHERE ([TOROLT]='F');


GO
PRINT N'Creating Table [dbo].[T_LEGMAGASABBSZINTUFENNTARTO]...';


GO
CREATE TABLE [dbo].[T_LEGMAGASABBSZINTUFENNTARTO] (
    [ID]                  INT              IDENTITY (1, 1) NOT NULL,
    [C_AZONOSITO]         INT              NOT NULL,
    [C_GUID]              UNIQUEIDENTIFIER NOT NULL,
    [C_NEV]               NVARCHAR (1000)  NOT NULL,
    [TOROLT]              CHAR (1)         NOT NULL,
    [SERIAL]              INT              NOT NULL,
    [LASTCHANGED]         DATETIME         NOT NULL,
    [CREATED]             DATETIME         NOT NULL,
    [MODIFIER]            INT              NULL,
    [CREATOR]             INT              NULL,
    CONSTRAINT [PK_LegmagasabbSzintuFenntarto] PRIMARY KEY CLUSTERED ([ID] ASC),
    CONSTRAINT [UK_LegmagasabbSzintuFenntarto_Azonosito] UNIQUE NONCLUSTERED ([C_AZONOSITO] ASC),
    CONSTRAINT [UK_LegmagasabbSzintuFenntarto_Guid] UNIQUE NONCLUSTERED ([C_GUID] ASC)
);


GO
PRINT N'Creating Table [dbo].[T_TANULASIEGYSEG]...';


GO
CREATE TABLE [dbo].[T_TANULASIEGYSEG] (
    [ID]                   INT             IDENTITY (1, 1) NOT NULL,
    [C_SORSZAM]            INT             NOT NULL,
    [C_SZAKMAIRANYTIPUSID] INT             NULL,
    [C_SZAKMATIPUSID]      INT             NOT NULL,
    [C_SZOVEG]             NVARCHAR (2000) NOT NULL,
    [C_INTEZMENYID]        INT             NOT NULL,
    [C_TANEVID]            INT             NOT NULL,
    [TOROLT]               CHAR (1)        NOT NULL,
    [SERIAL]               INT             NOT NULL,
    [LASTCHANGED]          DATETIME        NOT NULL,
    [CREATED]              DATETIME        NOT NULL,
    [MODIFIER]             INT             NULL,
    [CREATOR]              INT             NULL,
    [ELOZOTANEVIREKORDID]  INT             NULL,
    CONSTRAINT [PK_TanulasiEgyseg] PRIMARY KEY CLUSTERED ([ID] ASC)
);


GO
PRINT N'Creating Index [dbo].[T_TANULASIEGYSEG].[NCI_TanulasiEgyseg_IntezmenyId_TanevId_SzakmairanyTipusId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_TanulasiEgyseg_IntezmenyId_TanevId_SzakmairanyTipusId]
    ON [dbo].[T_TANULASIEGYSEG]([C_INTEZMENYID] ASC, [C_TANEVID] ASC, [C_SZAKMAIRANYTIPUSID] ASC);


GO
PRINT N'Creating Index [dbo].[T_TANULASIEGYSEG].[NCI_TanulasiEgyseg_IntezmenyId_TanevId_SzakmaTipusId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_TanulasiEgyseg_IntezmenyId_TanevId_SzakmaTipusId]
    ON [dbo].[T_TANULASIEGYSEG]([C_INTEZMENYID] ASC, [C_TANEVID] ASC, [C_SZAKMATIPUSID] ASC);


GO
PRINT N'Creating Index [dbo].[T_TANULASIEGYSEG].[NCI_TanulasiEgyseg_IntezmenyId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_TanulasiEgyseg_IntezmenyId]
    ON [dbo].[T_TANULASIEGYSEG]([C_INTEZMENYID] ASC);


GO
PRINT N'Creating Index [dbo].[T_TANULASIEGYSEG].[NCI_TanulasiEgyseg_TanevId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_TanulasiEgyseg_TanevId]
    ON [dbo].[T_TANULASIEGYSEG]([C_TANEVID] ASC);


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_TANULASIEGYSEG]...';


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG]
    ADD DEFAULT ((0)) FOR [SERIAL];


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_TANULASIEGYSEG]...';


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG]
    ADD DEFAULT (getdate()) FOR [CREATED];


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_TANULASIEGYSEG]...';


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG]
    ADD DEFAULT (getdate()) FOR [LASTCHANGED];


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_TANULASIEGYSEG]...';


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG]
    ADD DEFAULT ('F') FOR [TOROLT];


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


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH NOCHECK
    ADD CONSTRAINT [FK_TanulasiEgyseg_SzakmairanyTipusId_IntezmenyId_TanevId_REF_SzakmairanyTipus] FOREIGN KEY ([C_SZAKMAIRANYTIPUSID], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_SZAKMAIRANYTIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);


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


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH NOCHECK
    ADD CONSTRAINT [FK_TanulasiEgyseg_SzakmaTipusId_IntezmenyId_TanevId_REF_SzakmaTipus] FOREIGN KEY ([C_SZAKMATIPUSID], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_SZAKMATIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);


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


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH NOCHECK
    ADD CONSTRAINT [FK_TanulasiEgyseg_IntezmenyId_REF_Intezmeny] FOREIGN KEY ([C_INTEZMENYID]) REFERENCES [dbo].[T_INTEZMENY] ([ID]);


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


GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH NOCHECK
    ADD CONSTRAINT [FK_TanulasiEgyseg_TanevId_REF_Tanev] FOREIGN KEY ([C_TANEVID]) REFERENCES [dbo].[T_TANEV] ([ID]);


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


GO
ALTER TABLE [dbo].[T_FENNTARTO] WITH NOCHECK
    ADD CONSTRAINT [FK_Fenntarto_LegmagasabbSzintuFenntartoId_REF_LegmagasabbSzintuFenntartoId] FOREIGN KEY ([C_LEGMAGASABBSZINTUFENNTARTOID]) REFERENCES [dbo].[T_LEGMAGASABBSZINTUFENNTARTO] ([ID]);


GO
PRINT N'Altering Extended Property [dbo].[T_INTEZMENY].[C_FENNTARTOID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'Intézmény fenntartója', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_INTEZMENY', @level2type = N'COLUMN', @level2name = N'C_FENNTARTOID';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[ID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord egyedi azonosítója, generált IDENTITY(1, 1) (kivéve altáblák esetén, ahol a főtábla ID-ját kapja)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'ID';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[TOROLT].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord logikai töröltségét jelző flag', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'TOROLT';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[SERIAL].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'Minden C# kódból történő módosítás esetén eggyel nő az értéke. Hogy párhuzamos módosítás esetnán ne íródjanak felül az adatok', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'SERIAL';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[LASTCHANGED].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'  A rekord utolsó módosításának időpontja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'LASTCHANGED';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[CREATED].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord létrehozásának időpontja ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'CREATED';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[MODIFIER].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekordot utoljára módosító felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'MODIFIER';


GO
PRINT N'Creating Extended Property [dbo].[T_LEGMAGASABBSZINTUFENNTARTO].[CREATOR].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekordot létrehozó felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_LEGMAGASABBSZINTUFENNTARTO', @level2type = N'COLUMN', @level2name = N'CREATOR';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[ID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord egyedi azonosítója, generált IDENTITY(1, 1) (kivéve altáblák esetén, ahol a főtábla ID-ját kapja)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'ID';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[C_SORSZAM].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A tanulási egység sorszáma', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'C_SORSZAM';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[C_SZAKMAIRANYTIPUSID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A tanulási egységhez kapcsolódó SzakmaIrányTípus azonosítója', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'C_SZAKMAIRANYTIPUSID';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[C_SZAKMATIPUSID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A tanulási egységhez kapcsolódó SzakmaTípus azonosítója', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'C_SZAKMATIPUSID';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[C_SZOVEG].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A tanulási egység leírása', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'C_SZOVEG';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[C_INTEZMENYID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'Az intézmény ID-ja, amihez a rekord tartozik', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'C_INTEZMENYID';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[C_TANEVID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A tanév ID-ja, amihez a rekord tartozik', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'C_TANEVID';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[TOROLT].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord logikai töröltségét jelző flag', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'TOROLT';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[SERIAL].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'Minden C# kódból történő módosítás esetén eggyel nő az értéke. Hogy párhuzamos módosítás esetnán ne íródjanak felül az adatok', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'SERIAL';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[LASTCHANGED].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'  A rekord utolsó módosításának időpontja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'LASTCHANGED';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[CREATED].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord létrehozásának időpontja ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'CREATED';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[MODIFIER].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekordot utoljára módosító felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'MODIFIER';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[CREATOR].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekordot létrehozó felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'CREATOR';


GO
PRINT N'Creating Extended Property [dbo].[T_TANULASIEGYSEG].[ELOZOTANEVIREKORDID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANULASIEGYSEG', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDID';


GO
PRINT N'Creating Extended Property [dbo].[T_FENNTARTO].[C_AZONOSITO].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A fenntartó rendszerbeli egyedi azonosítója', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_FENNTARTO', @level2type = N'COLUMN', @level2name = N'C_AZONOSITO';


GO
PRINT N'Creating Extended Property [dbo].[T_FENNTARTO].[C_GUID].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'A fenntartó rendszerek közötti egyedi azonosítója', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_FENNTARTO', @level2type = N'COLUMN', @level2name = N'C_GUID';


GO
PRINT N'Creating Extended Property [dbo].[T_FENNTARTO].[C_ISTESZTFENNTARTO].[MS_Description]...';


GO
EXECUTE  dev.uspaddorupdateextendedproperty @name = N'MS_Description', @value = N'Ha értéke IGAZ, Teszt fenntartóról beszélünk', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_FENNTARTO', @level2type = N'COLUMN', @level2name = N'C_ISTESZTFENNTARTO';


GO
PRINT N'Creating Extended Property [dbo].[T_FENNTARTO].[C_LEGMAGASABBSZINTUFENNTARTOID].[MS_Description]...';


GO

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

GO
ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH CHECK CHECK CONSTRAINT [FK_TanulasiEgyseg_SzakmairanyTipusId_IntezmenyId_TanevId_REF_SzakmairanyTipus];

ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH CHECK CHECK CONSTRAINT [FK_TanulasiEgyseg_SzakmaTipusId_IntezmenyId_TanevId_REF_SzakmaTipus];

ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH CHECK CHECK CONSTRAINT [FK_TanulasiEgyseg_IntezmenyId_REF_Intezmeny];

ALTER TABLE [dbo].[T_TANULASIEGYSEG] WITH CHECK CHECK CONSTRAINT [FK_TanulasiEgyseg_TanevId_REF_Tanev];

ALTER TABLE [dbo].[T_FENNTARTO] WITH CHECK CHECK CONSTRAINT [FK_Fenntarto_LegmagasabbSzintuFenntartoId_REF_LegmagasabbSzintuFenntartoId];

EXEC dev.uspCreateSchemaViews 'T_TANULASIEGYSEG, T_FENNTARTO'

EXEC dev.sp_Global_GenerateAsyncAuditTriggerAll


GO
PRINT N'Update complete.';


GO
