153 lines
No EOL
3.9 KiB
Transact-SQL
153 lines
No EOL
3.9 KiB
Transact-SQL
--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
|
|
|
|
|