--Migration IF COL_LENGTH('dbo.T_INTEZMENYADATOK', 'CORE_CIMID') IS NULL BEGIN ALTER TABLE T_INTEZMENYADATOK ADD CORE_CIMID INT NULL END GO IF COL_LENGTH('dbo.T_MUKODESIHELY', 'CORE_CIMID') IS NULL BEGIN ALTER TABLE T_MUKODESIHELY ADD CORE_CIMID INT NULL END GO IF COL_LENGTH('dbo.T_INTEZMENYADATOK', 'CORE_ELERHETOSEGID') IS NULL BEGIN ALTER TABLE T_INTEZMENYADATOK ADD CORE_ELERHETOSEGID INT NULL END GO IF COL_LENGTH('dbo.T_MUKODESIHELY', 'CORE_ELERHETOSEGID') IS NULL BEGIN ALTER TABLE T_MUKODESIHELY ADD CORE_ELERHETOSEGID INT NULL END GO /* DROP TABLE IF EXISTS dev.Environment */ /* CREATE TABLE dev.Environment( [Key] NVARCHAR(255) ,[Value] NVARCHAR(1000) ,[Description] NVARCHAR(1000) ) */ --Itt az amelyik az adott környezetre vonatkozik /* IF NOT EXISTS(SELECT 1 FROM dev.Environment WHERE [Key] = 'Fenntarto') BEGIN INSERT INTO dev.Environment([Key], [Value], [Description]) VALUES('Fenntarto', 'KK'/'NSZFH'/'HOI'/'AZURE', 'Adott adatbázisban lévő intézmények fő fenntartója') END */ DROP SEQUENCE IF EXISTS dbo.SeqCoreMunkaugyiAdatok GO CREATE SEQUENCE dbo.SeqCoreMunkaugyiAdatok AS INT START WITH 1 INCREMENT BY 1 GO IF COL_LENGTH('dbo.T_MUNKAUGYIADATOK', 'CORE_ID') IS NULL BEGIN ALTER TABLE T_MUNKAUGYIADATOK ADD CORE_ID INT NOT NULL DEFAULT NEXT VALUE FOR dbo.SeqCoreMunkaugyiAdatok END GO IF COL_LENGTH('dbo.T_TOVABBIMUNKAUGYIADATOK', 'CORE_ID') IS NULL BEGIN ALTER TABLE T_TOVABBIMUNKAUGYIADATOK ADD CORE_ID INT NOT NULL DEFAULT NEXT VALUE FOR dbo.SeqCoreMunkaugyiAdatok END GO IF COL_LENGTH('dbo.T_KEPESITES_VEGZETTSEG', 'CORE_ID') IS NULL BEGIN ALTER TABLE T_KEPESITES_VEGZETTSEG ADD CORE_ID INT NOT NULL IDENTITY(1,1) END GO IF COL_LENGTH('dbo.T_FELHASZNALO_SZEREPKOR', 'CORE_ID') IS NULL BEGIN ALTER TABLE T_FELHASZNALO_SZEREPKOR ADD CORE_ID INT NOT NULL IDENTITY(1,1) END GO IF COL_LENGTH('dbo.T_DICTIONARYITEMBASE', 'CORE_KATEGORIAID') IS NULL BEGIN ALTER TABLE T_DICTIONARYITEMBASE ADD CORE_KATEGORIAID INT NOT NULL DEFAULT 0 END GO IF COL_LENGTH('dbo.T_CIM', 'CORE_PUBLIKUS') IS NULL BEGIN ALTER TABLE T_CIM ADD CORE_PUBLIKUS CHAR(1) NOT NULL DEFAULT 'F' END GO -- Struktúrális változás miatt szükséges, hogy nullable legyen. -- Tranzakcióban kezeljük, nem fog tőlünk hibás rekord keletkezni. ALTER TABLE dbo.T_GONDVISELO ALTER COLUMN C_TANULOID INT NULL GO ALTER TABLE dbo.T_GONDVISELO ALTER COLUMN C_ROKONSAGFOKA INT NULL GO ALTER TABLE dbo.T_FELHASZNALOBELEPES ALTER COLUMN C_FELHASZNALOID INT NULL GO ALTER TABLE dbo.T_FELHASZNALOBELEPESTORTENET ALTER COLUMN C_FELHASZNALOID INT NULL GO DECLARE @sql nvarchar(max) = '' SELECT @sql += 'EXEC sp_refreshview ''dbo.' + [name] + '''' + char(13) + char(10) FROM sys.views WHERE schema_id = 1 /*dbo*/ AND [name] like '%_OSSZES' EXEC sp_executesql @sql GO PRINT '--- intézményi view-k (dbo táblákkal megegyezõ nevû és a tábla_OSSZES nevûek) frissítése ---' DECLARE @viewname nvarchar(100), @pureview nvarchar(100) DECLARE semaviewk CURSOR LOCAL FOR SELECT '['+TABLE_SCHEMA + '].[' + TABLE_NAME + ']', TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'VIEW' and TABLE_SCHEMA LIKE 'KR[_]%[_]Schema' AND TABLE_NAME IN ( 'T_INTEZMENYADATOK', 'T_INTEZMENYADATOK_OSSZES', 'T_MUKODESIHELY', 'T_MUKODESIHELY_OSSZES', 'T_MUKODESIHELY', 'T_MUKODESIHELY_OSSZES', 'T_TOVABBIMUNKAUGYIADATOK', 'T_TOVABBIMUNKAUGYIADATOK_OSSZES', 'T_MUNKAUGYIADATOK', 'T_MUNKAUGYIADATOK_OSSZES', 'T_DICTIONARYITEMBASE', 'T_DICTIONARYITEMBASE_OSSZES', 'T_CIM', 'T_CIM_OSSZES' ) -- ha csak néhány VIEW frissült, akkor a gyorsabb futásért ide fel lehet sorolni ORDER BY TABLE_SCHEMA, TABLE_NAME OPEN semaviewk FETCH NEXT FROM semaviewk INTO @viewname, @pureview WHILE @@FETCH_STATUS = 0 BEGIN PRINT @viewname EXEC sp_refreshview @viewname FETCH NEXT FROM semaviewk INTO @viewname, @pureview END CLOSE semaviewk DEALLOCATE semaviewk GO