0
使用left()或substring()我可以得到前2個字節,它不等於前2個字符。如何從mySQL中的字符串中提取前2個字符?
使用PhpMyadmin,這是當我瀏覽表中的字符串值時看到的: %D8%A3%D8%B9%D8%B7%D9%8A。 這相當於阿拉伯語字詞
這是SHOW VARIABLES LIKE'char%'的輸出;
character_set_client utf8
character_set_connection utf8
character_set_database utf8
character_set_filesystem binary
character_set_results utf8
character_set_server utf8
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
我正在使用collation:utf8_general_ci作爲表和列。
從手冊:「*返回最左邊的len字符...此函數是**多字節安全***」。 –
我正在使用這個子字符串函數,如下所示:從sc_services中選擇substring(substring_index(url,'/', - 1),1,200) ,但返回的值顯然是錯誤的,因爲結果字符串以%D結尾,而它應以%D1或%D2結尾。在百分號後面必須有2個字符。 –
如果你的數據庫中有你在這裏顯示的內容,例如你沒有正確使用utf8,看起來你正在將一個utf8表存儲在一個utf8表中,如果你正在存儲數據,你會得到可讀的輸出&我想子字符串可以爲你工作得很好。 – ahmad