-- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE procedure [C6MartPeriodico].[CercaCaratteriAnomali] AS BEGIN declare @num int set @num = 1 CREATE TABLE #tab_temp( [Val_Ascii] [smallint] NOT NULL, [Val_Char] [varchar](1) NOT NULL, [Rete] [varchar](1) NOT NULL, [Cod_Fiscale] [varchar](16) NOT NULL, [Nome_Campo] [varchar](50) NOT NULL, [Val_Campo] [varchar](150) NOT NULL) set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(email,@num,1)), substring(email,@num,1), rete, Cod_Fiscale, 'EMAIL', email FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(email,@num,len(email))) not between 64 and 90 and ascii(substring(email,@num,len(email))) not between 97 and 122 and ascii(substring(email,@num,len(email))) not between 48 and 57 and ascii(substring(email,@num,len(email))) <> 32 and ascii(substring(email,@num,len(email))) <> 40 and ascii(substring(email,@num,len(email))) <> 41 and ascii(substring(email,@num,len(email))) <> 43 and ascii(substring(email,@num,len(email))) <> 44 and ascii(substring(email,@num,len(email))) <> 45 and ascii(substring(email,@num,len(email))) <> 46 and ascii(substring(email,@num,len(email))) <> 95 and ascii(substring(email,@num,len(email))) <> 39 and ascii(substring(email,@num,len(email))) <> 47 and ascii(substring(email,@num,len(email))) <> 63 set @num = @num + 1 end --inizio intervento: 05/02/2015 FCianfa Controllo caratteriAnomali su campi Nome e Cognome della tb c6martperiodico.ANAG_CLIENTI set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Nome+Cognome,@num,1)), substring(Nome+Cognome,@num,1), rete, Cod_Fiscale, 'Nome+Cognome', Nome+Cognome FROM C6MartPeriodico.ANAG_CLIENTI WHERE ascii(substring(Nome+Cognome,@num,len(Nome))) not between 64 and 90 and ascii(substring(Nome+Cognome,@num,len(Nome))) not between 97 and 122 and ascii(substring(Nome+Cognome,@num,len(Nome))) not between 48 and 57 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 32 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 40 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 41 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 43 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 44 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 45 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 46 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 95 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 39 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 38 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 47 and ascii(substring(Nome+Cognome,@num,len(Nome))) <> 63 set @num = @num + 1 end --fine intervento: 05/02/2015 FCianfa Controllo caratteriAnomali su campi Nome e Cognome della tb c6martperiodico.ANAG_CLIENTI set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Indirizzo,@num,1)), substring(Indirizzo,@num,1), rete, Cod_Fiscale, 'INDIRIZZO', Indirizzo FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(Indirizzo,@num,len(Indirizzo))) not between 64 and 90 and ascii(substring(Indirizzo,@num,len(Indirizzo))) not between 97 and 122 and ascii(substring(Indirizzo,@num,len(Indirizzo))) not between 48 and 57 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 32 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 40 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 41 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 43 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 44 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 45 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 46 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 95 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 39 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 47 and ascii(substring(Indirizzo,@num,len(Indirizzo))) <> 63 set @num = @num + 1 end set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(CAP,@num,1)), substring(CAP,@num,1), rete, Cod_Fiscale, 'CAP', CAP FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(CAP,@num,len(CAP))) not between 64 and 90 and ascii(substring(CAP,@num,len(CAP))) not between 97 and 122 and ascii(substring(CAP,@num,len(CAP))) not between 48 and 57 and ascii(substring(CAP,@num,len(CAP))) <> 32 and ascii(substring(CAP,@num,len(CAP))) <> 40 and ascii(substring(CAP,@num,len(CAP))) <> 41 and ascii(substring(CAP,@num,len(CAP))) <> 43 and ascii(substring(CAP,@num,len(CAP))) <> 44 and ascii(substring(CAP,@num,len(CAP))) <> 45 and ascii(substring(CAP,@num,len(CAP))) <> 46 and ascii(substring(CAP,@num,len(CAP))) <> 95 and ascii(substring(CAP,@num,len(CAP))) <> 39 and ascii(substring(CAP,@num,len(CAP))) <> 47 and ascii(substring(CAP,@num,len(CAP))) <> 63 set @num = @num + 1 end set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Citta,@num,1)), substring(Citta,@num,1), rete, Cod_Fiscale, 'Citta', Citta FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(Citta,@num,len(Citta))) not between 64 and 90 and ascii(substring(Citta,@num,len(Citta))) not between 97 and 122 and ascii(substring(Citta,@num,len(Citta))) not between 48 and 57 and ascii(substring(Citta,@num,len(Citta))) <> 32 and ascii(substring(Citta,@num,len(Citta))) <> 40 and ascii(substring(Citta,@num,len(Citta))) <> 41 and ascii(substring(Citta,@num,len(Citta))) <> 43 and ascii(substring(Citta,@num,len(Citta))) <> 44 and ascii(substring(Citta,@num,len(Citta))) <> 45 and ascii(substring(Citta,@num,len(Citta))) <> 46 and ascii(substring(Citta,@num,len(Citta))) <> 95 and ascii(substring(Citta,@num,len(Citta))) <> 39 and ascii(substring(Citta,@num,len(Citta))) <> 47 and ascii(substring(Citta,@num,len(Citta))) <> 63 set @num = @num + 1 end set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Prov,@num,1)), substring(Citta,@num,1), rete, Cod_Fiscale, 'Prov', Prov FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(Prov,@num,len(Prov))) not between 64 and 90 and ascii(substring(Prov,@num,len(Prov))) not between 97 and 122 and ascii(substring(Prov,@num,len(Prov))) not between 48 and 57 and ascii(substring(Prov,@num,len(Prov))) <> 32 and ascii(substring(Prov,@num,len(Prov))) <> 40 and ascii(substring(Prov,@num,len(Prov))) <> 41 and ascii(substring(Prov,@num,len(Prov))) <> 43 and ascii(substring(Prov,@num,len(Prov))) <> 44 and ascii(substring(Prov,@num,len(Prov))) <> 45 and ascii(substring(Prov,@num,len(Prov))) <> 46 and ascii(substring(Prov,@num,len(Prov))) <> 95 and ascii(substring(Prov,@num,len(Prov))) <> 39 and ascii(substring(Prov,@num,len(Prov))) <> 47 and ascii(substring(Prov,@num,len(Prov))) <> 63 set @num = @num + 1 end set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Nazione,@num,1)), substring(Nazione,@num,1), rete, Cod_Fiscale, 'Nazione', Nazione FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(Nazione,@num,len(Nazione))) not between 64 and 90 and ascii(substring(Nazione,@num,len(Nazione))) not between 97 and 122 and ascii(substring(Nazione,@num,len(Nazione))) not between 48 and 57 and ascii(substring(Nazione,@num,len(Nazione))) <> 32 and ascii(substring(Nazione,@num,len(Nazione))) <> 40 and ascii(substring(Nazione,@num,len(Nazione))) <> 41 and ascii(substring(Nazione,@num,len(Nazione))) <> 43 and ascii(substring(Nazione,@num,len(Nazione))) <> 44 and ascii(substring(Nazione,@num,len(Nazione))) <> 45 and ascii(substring(Nazione,@num,len(Nazione))) <> 46 and ascii(substring(Nazione,@num,len(Nazione))) <> 95 and ascii(substring(Nazione,@num,len(Nazione))) <> 39 and ascii(substring(Nazione,@num,len(Nazione))) <> 47 and ascii(substring(Nazione,@num,len(Nazione))) <> 63 set @num = @num + 1 end set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Presso,@num,1)), substring(Presso,@num,1), rete, Cod_Fiscale, 'Presso', Presso FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(Presso,@num,len(Presso))) not between 64 and 90 and ascii(substring(Presso,@num,len(Presso))) not between 97 and 122 and ascii(substring(Presso,@num,len(Presso))) not between 48 and 57 and ascii(substring(Presso,@num,len(Presso))) <> 32 and ascii(substring(Presso,@num,len(Presso))) <> 40 and ascii(substring(Presso,@num,len(Presso))) <> 41 and ascii(substring(Presso,@num,len(Presso))) <> 43 and ascii(substring(Presso,@num,len(Presso))) <> 44 and ascii(substring(Presso,@num,len(Presso))) <> 45 and ascii(substring(Presso,@num,len(Presso))) <> 46 and ascii(substring(Presso,@num,len(Presso))) <> 95 and ascii(substring(Presso,@num,len(Presso))) <> 39 and ascii(substring(Presso,@num,len(Presso))) <> 47 and ascii(substring(Presso,@num,len(Presso))) <> 63 set @num = @num + 1 end set @num = 1 while @num < 150 begin insert into #tab_temp SELECT ascii(substring(Rol,@num,1)), substring(Rol,@num,1), rete, Cod_Fiscale, 'Rol', Rol FROM C6MartPeriodico.ContrattoSEI WHERE ascii(substring(Rol,@num,len(Rol))) not between 64 and 90 and ascii(substring(Rol,@num,len(Rol))) not between 97 and 122 and ascii(substring(Rol,@num,len(Rol))) not between 48 and 57 and ascii(substring(Rol,@num,len(Rol))) <> 32 and ascii(substring(Rol,@num,len(Rol))) <> 40 and ascii(substring(Rol,@num,len(Rol))) <> 41 and ascii(substring(Rol,@num,len(Rol))) <> 43 and ascii(substring(Rol,@num,len(Rol))) <> 44 and ascii(substring(Rol,@num,len(Rol))) <> 45 and ascii(substring(Rol,@num,len(Rol))) <> 46 and ascii(substring(Rol,@num,len(Rol))) <> 95 and ascii(substring(Rol,@num,len(Rol))) <> 39 and ascii(substring(Rol,@num,len(Rol))) <> 47 and ascii(substring(Rol,@num,len(Rol))) <> 63 set @num = @num + 1 end select distinct * from #tab_temp ------------------------------------------------------- --SELECT * FROM C6MartPeriodico.ContrattoSEI --WHERE -- Email like '%¿%' --OR -- Indirizzo like '%¿%' --OR -- CAP like '%¿%' --OR -- Citta like '%¿%' --OR -- Prov like '%¿%' --OR -- Nazione like '%¿%' --OR -- Presso like '%¿%' --OR -- Rol like '%¿%' --OR -- Email like '%Ç%' --OR -- Indirizzo like '%Ç%' --OR -- CAP like '%Ç%' --OR -- Citta like '%Ç%' --OR -- Prov like '%Ç%' --OR -- Nazione like '%Ç%' --OR -- Presso like '%Ç%' --OR -- Rol like '%Ç%' --OR -- Email like '%À%' --OR -- Indirizzo like '%À%' --OR -- CAP like '%À%' --OR -- Citta like '%À%' --OR -- Prov like '%À%' --OR -- Nazione like '%À%' --OR -- Presso like '%À%' --OR -- Rol like '%À%' --OR -- Email like '%É%' --OR -- Indirizzo like '%É%' --OR -- CAP like '%É%' --OR -- Citta like '%É%' --OR -- Prov like '%É%' --OR -- Nazione like '%É%' --OR -- Presso like '%É%' --OR -- Rol like '%É%' --OR -- Email like '%µ%' --OR -- Indirizzo like '%µ%' --OR -- CAP like '%µ%' --OR -- Citta like '%µ%' --OR -- Prov like '%µ%' --OR -- Nazione like '%µ%' --OR -- Presso like '%µ%' --OR -- Rol like '%µ%' END