服务器之家

服务器之家 > 正文

asp MYSQL出现问号乱码的解决方法

时间:2019-09-20 13:46     来源/作者: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) 


这样就不会乱码了

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部