易语言mysql乱码_分享一个解决MySQL写入中文乱码的方法
【編程語(yǔ)言:易語(yǔ)言】
之前有發(fā)帖請(qǐng)教過(guò)如何解決MySQL寫(xiě)入中文亂碼的問(wèn)題。但沒(méi)人會(huì),或者是會(huì)的人不想回答。搜索網(wǎng)上的答案并嘗試很多次無(wú)效,所以當(dāng)時(shí)就因?yàn)檫@個(gè)亂碼問(wèn)題擱淺了一個(gè)軟件很多日子。
直到昨天又一次互聯(lián)網(wǎng)搜索,嘗試很多次后,終于解決了亂碼問(wèn)題,再一鼓作氣完成了軟件的全部功能。
喜悅之余,也想到肯定有很多人被這個(gè)問(wèn)題所困擾,他們的心情我是理解的。所以我決定分享下這個(gè)方法。
1、首先在連接MySQL之后,執(zhí)行SQL語(yǔ)句?(連接句柄,?“set?names?'GBK'”),這樣才能讀取庫(kù)名、表名、記錄數(shù)據(jù)時(shí)顯示中文。當(dāng)然也可以?執(zhí)行SQL語(yǔ)句?(連接句柄,?“set?names?'utf8'”),然后讀取數(shù)據(jù)出來(lái)后,轉(zhuǎn)換UTF8編碼為ANSI編碼即可(轉(zhuǎn)換模塊、源碼多了去,自己找)。
2、原本以為第一條執(zhí)行后能輸出中文了,輸入中文應(yīng)該沒(méi)問(wèn)題。但就是輸入中文有問(wèn)題,原因就在,使用MySQL支持庫(kù)的創(chuàng)建庫(kù)和創(chuàng)建表命令創(chuàng)建后的庫(kù)表,默認(rèn)都是拉丁字符集(當(dāng)然是我這里發(fā)現(xiàn)的情況,不是所有情況都這樣)。所以要這樣:
創(chuàng)建庫(kù)之后,執(zhí)行SQL語(yǔ)句?(連接句柄,?“ALTER?DATABASE?`庫(kù)名`?DEFAULT?CHARACTER?SET?utf8?COLLATE?utf8_general_ci;”)
創(chuàng)建表之后,執(zhí)行SQL語(yǔ)句?(連接句柄,?“ALTER?TABLE?`表名`?DEFAULT?CHARACTER?SET?utf8?COLLATE?utf8_general_ci;”)
這樣就可以正常輸入中文了。
3、由于寫(xiě)入記錄時(shí)使用單引號(hào)包括數(shù)據(jù),所以數(shù)據(jù)中如果有單引號(hào)就必須轉(zhuǎn)義,刪除記錄的條件語(yǔ)句也要求轉(zhuǎn)義。轉(zhuǎn)義的處理方法:
字段值?=?子文本替換?(子文本替換?(子文本替換?(字段值,?“\'”,?“\|”,?,?,?真),?“'”,?“\'”,?,?,?真),?“\|”,?“\\\'”,?,?,?真)
總結(jié)
以上是生活随笔為你收集整理的易语言mysql乱码_分享一个解决MySQL写入中文乱码的方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: HTML文本下划线效果,聊聊CSS中文本
- 下一篇: mysql pdo 查询一条数据,使用