加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

asp MYSQL出现问号乱码的处理方法

发布时间:2023-05-27 14:00:40 所属栏目:教程 来源:
导读:用asp读取MYSQL数据库出现乱码,读取到的汉字都是????

这样的问题是因为

数据库字符集,表字符集,字段字符集都设为:gbk_chinese_ci

注意数据库连接串里面的 Stmt=Set Names 'GBK' ,一定要有
用asp读取MYSQL数据库出现乱码,读取到的汉字都是????

这样的问题是因为
 
数据库字符集,表字符集,字段字符集都设为: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)

这样就不会乱码了
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!