158 lines
No EOL
11 KiB
Transact-SQL
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 |