我們有一些使用拉丁字符集而不是UTF-8設置的表,它允許在表中輸入錯誤的字符,通常的罪魁禍首是人們從Word或Outlook複製/粘貼這些令人討厭的隱藏字符。 ..MySQL查詢識別錯誤的字符?
是否有任何查詢我們可以用來識別這些字符來清理它們?
感謝,
我們有一些使用拉丁字符集而不是UTF-8設置的表,它允許在表中輸入錯誤的字符,通常的罪魁禍首是人們從Word或Outlook複製/粘貼這些令人討厭的隱藏字符。 ..MySQL查詢識別錯誤的字符?
是否有任何查詢我們可以用來識別這些字符來清理它們?
感謝,
我假設你的連接chacater組設置爲UTF8
當您填寫的數據
MySQL
替換unconvertable字符?
(問號):
SELECT CONVERT('тест' USING latin1);
----
????
問題是區分合法問號和非法問題。
通常,在一個字開頭的問號是一個不好的跡象,所以這樣的:
SELECT *
FROM mytable
WHERE myfield RLIKE '\\?[[:alnum:]]'
應該給一個良好的開端。
Out字符集被錯誤地設置爲拉丁文......不用說這個表格很大,並且確實有一些不好的數據。如果我們將字符集過夜切換爲UTF8,它會重新編制索引並解決問題? – xXPhenom22Xx
@ xXPhenom22Xx:不,它不會。超出範圍的值不會被神奇地轉換回來。 – Quassnoi
好了,這角色你叫「*壞字符*」? – Lion
我們的銷售人員傾向於複製/粘貼電話號碼很多,我們得到以下表格803-644-0100- – xXPhenom22Xx
或類似的東西>> 803-644-0100「 – xXPhenom22Xx