当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp MYSQL出现问号乱码的解决方法

ASP
Access 2000 数据库 80 万记录通用快速分页类
Microsoft JET Database Engine 错误 ''80004005'' 未指定的错误的完美解决方法
收藏的ASP常用的函数集
asp分页的一个类
ASP开发网页牢记注意事项
ASP下操作Excel技术总结分析
ASP数据岛操作类
ASP经典分页类
asp论坛在线人数统计研究
ASP调用SQL SERVER存储程序
asp输出bmp
ASP连接数据库的全能代码
ASP面向对象编程探讨及比较
web文件管理器的后续开发
一小偷类!!有兴趣的可以看看
利用ASP实现事务处理的方法
大数量查询分页显示 微软的解决办法
如何把ASP编写成DLL
asp实现树型结构
超级ASP大分页_我的类容我做主

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 146 ::
收藏到网摘: n/a

用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)

这样就不会乱码了