这样的问题是因为
数据库字符集,表字符集,字段字符集都设为: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)
这样就不会乱码了
如对本文有疑问,
点击进行留言回复!!
网友评论