sql >> Database teknologi >  >> RDS >> Mysql

Hvordan kan jeg finde ikke-ASCII-tegn i MySQL?

MySQL giver omfattende karaktersætstyring, der kan hjælpe med denne form for problemer.

SELECT whatever
  FROM tableName 
 WHERE columnToCheck <> CONVERT(columnToCheck USING ASCII)

CONVERT(col USING charset) funktion gør de ukonverterbare tegn til erstatningstegn. Derefter vil den konverterede og ikke-konverterede tekst være ulige.

Se dette for mere diskussion. https://dev.mysql.com/doc/refman /8.0/da/charset-repertoire.html

Du kan bruge et hvilket som helst tegnsætnavn, du ønsker, i stedet for ASCII. For eksempel, hvis du vil finde ud af, hvilke tegn der ikke gengives korrekt i kodetabel 1257 (litauisk, lettisk, estisk), skal du bruge CONVERT(columnToCheck USING cp1257)



  1. Opret en unik begrænsning med null-kolonner

  2. Returner kortdagens navn fra en dato i Oracle

  3. Dobbelt kolon (::) notation i SQL

  4. int(11) vs. int(alt andet)