Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Trova caratteri non ASCII nelle colonne varchar usando SQL Server

Ecco una soluzione per la ricerca su una singola colonna utilizzando PATINDEX.
Mostra anche StartPosition, InvalidCharacter e codice ASCII.

select line,
  patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line) as [Position],
  substring(line,patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line),1) as [InvalidCharacter],
  ascii(substring(line,patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line),1)) as [ASCIICode]
from  staging.APARMRE1
where patindex('%[^ !-~]%' COLLATE Latin1_General_BIN,Line) >0