Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie finde ich Nicht-ASCII-Zeichen in MySQL?

MySQL bietet eine umfassende Zeichensatzverwaltung, die bei dieser Art von Problem hilfreich sein kann.

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

Der CONVERT(col USING charset) Funktion verwandelt die nicht konvertierbaren Zeichen in Ersatzzeichen. Dann sind der konvertierte und der nicht konvertierte Text ungleich.

Siehe dies für weitere Diskussionen. https://dev.mysql.com/doc/refman /8.0/en/charset-repertoire.html

Anstelle von ASCII können Sie einen beliebigen Zeichensatznamen verwenden. Wenn Sie beispielsweise herausfinden möchten, welche Zeichen in der Codepage 1257 (Litauisch, Lettisch, Estnisch) nicht korrekt dargestellt werden, verwenden Sie CONVERT(columnToCheck USING cp1257)