原本想說,應用自認還算熟悉的 Access 來當前端工具,連接後端資料庫 MySQL 的數據,就可以平順地將現今正再使用的程式及資料移轉到 MySQL 中,好方便多人共同使用,讓電腦應用能更多元化些 !!
不料,人算真不如天算,隨意在 MySQL 建置的數據資料,在經過 Access 的連接資料表動作後,被連接到的數據內容,即然發生中文字變亂碼的情形。(同樣的現象也會產生在直接用程式讀取資料的時候)
將這問題在網上一查詢,好像有很多人發生過;不夠,他們發生的環境並和我,完全不同 !!
我可是使用 Access & MySQL 整合所產生了
他們則是發生在程式運用擷取資料數據的時候,每次都是 Set Names 'UTF8' 就可解決,多看幾次都快背起來了。
好吧,回頭來面對現實了解問題發生在那兒??
我們只是連接資料表而矣,並沒有時間下個 set name 指令 !!
在多方查找問題之後,才發現到 MySQL 網站共提供有兩個 ODBC 程式:
- MySQL ODBC 3.51 Driver
- MySQL ODBC 5.1 Driver
解決方法:更換最新的程式 MySQL ODBC 5.1 Driver 即可
使用 MySQL ODBC 3.51 Driver:顯示中文亂碼
使用 MySQL ODBC 5.1 Driver:正常顯示中文字
同樣的情形,在程式中的用法也相同。
ConnectString = "DRIVER={MySQL ODBC 3.51 Driver};" & _
"SERVER=" & strServerName & _
";DATABASE=" & strDatabaseName & ";" & _
"USER=" & strUserName & _
";PASSWORD=" & strPassword & _
";OPTION=3;"
ConnectString = "DRIVER={MySQL ODBC 5.1 Driver};" & _
"SERVER=" & strServerName & _
";DATABASE=" & strDatabaseName & ";" & _
"USER=" & strUserName & _
";PASSWORD=" & strPassword & _
";OPTION=3;"
沒有留言:
張貼留言