程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> asp MYSQL出現問號亂碼的解決方法

asp MYSQL出現問號亂碼的解決方法

編輯:關於ASP編程
這樣的問題是因為

數據庫字符集,表字符集,字段字符集都設為:gbk_chinese_ci


注意數據庫連接串裡面的 Stmt=Set Names 'GBK' ,一定要有這一句。 


下面是asp鏈接mysql的代碼。請注意,後面有個GBK。這樣就是指定鏈接的編碼類型。根據你使用的數據
庫編碼類型。修改成你自己的。

ConnectionString ="Driver={MySQL ODBC 3.51 
Driver};Server=myserver;Database=mysql;User=myuser;password=mypassword;Option=3;Stmt=Set 
Names 'GBK'"

如果使用高版本的mysql,經常出現這樣的情況,中文經常為亂碼;包括在php中。

參考的方法:


設置一下,mysql的字體.
在mysql.ini加入 

[mysql] 
default-character-set=gb2312

[client] 
default-character-set=gb2312 

[mysqld] 
default-character-set=gb2312 //或gbk

注冊改了後,在改之前的數據庫沒有效果的.這些數據庫目錄下的db.opt文件的內容改為

default-character-set=gb2312 
default-collation=gb2312_chinese_ci

也可以這麼做

 

dim driverName,chs
driverName="Driver={mysql odbc 3.51 
driver};server=localhost;database=test;uid=loaer;pwd=123456;"
set conn=server.createobject("adodb.connection")
conn.open driverName


'查詢之前先執行下面這一句
set chs=conn.Execute("SET NAMES 'gb2312'")

'查詢數據庫表

sql = "SELECT * FROM tb_commondata"
Set rs = conn.Execute(sql)


這樣就不會亂碼了
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved