kreta/Kreta.DataAccess.Migrations/Scripts/20211022163147_Nevelvalaszto_Eliminalas_CF/Nevelvalaszto_Eliminalas_CF.sql
2024-03-13 00:33:46 +01:00

158 lines
No EOL
11 KiB
Transact-SQL

DISABLE TRIGGER ALL ON T_FELHASZNALO
GO
/*
Születésinév elválasztó és Anyjaneve névelválasztó eliminálása miatt létrehozott új mezők updatje az eredeti de sokszor
hibás adatokkal töltött mezők alapján.
A többszörös szóközöket replace-eljük minden esetben
*/
--Szuletési vezeték és utóneve update
--Van elválasztó és jó helyen, Névsorrend = 'F'
UPDATE T_FELHASZNALO
SET
C_SZULETESIVEZETEKNEV = RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1, C_SZULETESINEVELVALASZTO))
,C_SZULETESIUTONEV = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_SZULETESINEVELVALASZTO +2,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
WHERE
LEN(C_SZULETESINEV) > 0
AND C_SZULETESINEVELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))-1 <> 0
--Szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))),C_SZULETESINEVELVALASZTO+1, 1) LIKE ' '
AND C_SZULETESINEVSORREND = 'F'
AND TOROLT = 'F'
AND C_SZULETESIVEZETEKNEV IS NULL
AND C_SZULETESIUTONEV IS NULL
--Van elválasztó de nem jó helyen, Névsorrend 'F'
UPDATE T_FELHASZNALO
SET
C_SZULETESIVEZETEKNEV = RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1, CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
,C_SZULETESIUTONEV = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) +1,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
WHERE
LEN(C_SZULETESINEV) > 0
AND C_SZULETESINEVELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) -1 <> 0
--Nem szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_SZULETESINEVELVALASZTO+1, 1) NOT LIKE ' '
AND C_SZULETESINEVSORREND = 'F'
AND TOROLT = 'F'
AND C_SZULETESIVEZETEKNEV IS NULL
AND C_SZULETESIUTONEV IS NULL
--Van elválasztó és jó helyen, Névsorrend 'T'
UPDATE T_FELHASZNALO
SET
C_SZULETESIVEZETEKNEV = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_SZULETESINEVELVALASZTO +2,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
,C_SZULETESIUTONEV = RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1,C_SZULETESINEVELVALASZTO))
WHERE
LEN(C_SZULETESINEV) > 0
AND C_SZULETESINEVELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) -1 <> 0
--Szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))),C_SZULETESINEVELVALASZTO+1, 1) LIKE ' '
AND C_SZULETESINEVSORREND = 'T'
AND TOROLT = 'F'
AND C_SZULETESIVEZETEKNEV IS NULL
AND C_SZULETESIUTONEV IS NULL
--Van elválasztó de nem jó helyen, Névsorrend 'T'
UPDATE T_FELHASZNALO
SET
C_SZULETESIVEZETEKNEV = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) +1,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
,C_SZULETESIUTONEV =RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1,CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
WHERE
LEN(C_SZULETESINEV) > 0
AND C_SZULETESINEVELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) -1 <> 0
--Nem szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_SZULETESINEV,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_SZULETESINEVELVALASZTO+1, 1) NOT LIKE ' '
AND C_SZULETESINEVSORREND = 'T'
AND TOROLT = 'F'
AND C_SZULETESIVEZETEKNEV IS NULL
AND C_SZULETESIUTONEV IS NULL
--Anyja vezeték és utóneve update
--Van elválasztó és jó helyen, Névsorrend = 'F'
UPDATE T_FELHASZNALO
SET
C_ANYJAVEZETEKNEVE = RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1,C_ANYJANEVEELVALASZTO))
,C_ANYJAUTONEVE = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_ANYJANEVEELVALASZTO +2,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
WHERE
LEN(C_ANYJANEVE) > 0
AND C_ANYJANEVEELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))-1 <> 0
--Szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))),C_ANYJANEVEELVALASZTO+1, 1) LIKE ' '
AND C_ANYJANEVESORREND = 'F'
AND TOROLT = 'F'
AND C_ANYJAVEZETEKNEVE IS NULL
AND C_ANYJAUTONEVE IS NULL
--Van elválasztó de nem jó helyen, Névsorrend 'F'
UPDATE T_FELHASZNALO
SET
C_ANYJAVEZETEKNEVE = RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1, CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
,C_ANYJAUTONEVE = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) +1,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
WHERE
LEN(C_ANYJANEVE) > 0
AND C_ANYJANEVEELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) -1 <> 0
--Nem szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_ANYJANEVEELVALASZTO+1, 1) NOT LIKE ' '
AND C_ANYJANEVESORREND = 'F'
AND TOROLT = 'F'
AND C_ANYJAVEZETEKNEVE IS NULL
AND C_ANYJAUTONEVE IS NULL
--Van elválasztó és jó helyen, Névsorrend 'T'
UPDATE T_FELHASZNALO
SET
C_ANYJAVEZETEKNEVE = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_ANYJANEVEELVALASZTO +2,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
,C_ANYJAUTONEVE = RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1,C_ANYJANEVEELVALASZTO))
WHERE
LEN(C_ANYJANEVE) > 0
AND C_ANYJANEVEELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) -1 <> 0
--Szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))),C_ANYJANEVEELVALASZTO+1, 1) LIKE ' '
AND C_ANYJANEVESORREND = 'T'
AND TOROLT = 'F'
AND C_ANYJAVEZETEKNEVE IS NULL
AND C_ANYJAUTONEVE IS NULL
--Van elválasztó de nem jó helyen, Névsorrend 'T'
UPDATE T_FELHASZNALO
SET
C_ANYJAVEZETEKNEVE = LTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) +1,
LEN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
,C_ANYJAUTONEVE =RTRIM(SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), 1,CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))))))
WHERE
LEN(C_ANYJANEVE) > 0
AND C_ANYJANEVEELVALASZTO <> 0 --Spec. usereknél ez 0 kivéve a Rendszerüzenet-nél
--Van szóköz a születési névben
AND CHARINDEX(' ', LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32))))) -1 <> 0
--Nem szóközre esik az elválasztó
AND SUBSTRING(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(C_ANYJANEVE,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))), C_ANYJANEVEELVALASZTO+1, 1) NOT LIKE ' '
AND C_ANYJANEVESORREND = 'T'
AND TOROLT = 'F'
AND C_ANYJAVEZETEKNEVE IS NULL
AND C_ANYJAUTONEVE IS NULL
GO
ENABLE TRIGGER ALL ON T_FELHASZNALO