求助往UTF-8编码的MySQL中插入中文字符没问题,插入泰文就不行。。。。。

yezzi 2008-04-22 07:05:06
我们的产品准备国际化,ASP和MySQL数据库统一用UTF-8编码,要用到中文和泰文

SQL Server数据库下完全没有问题,中文和泰文都能完美支持,不管是插入还是查询数据都是正常的
插入数据的时候用下面语句就行(name字段是nvarchar类型):
INSERT INTO abc(name) VALUES(N'泰国宾馆:โรงแรมไทยแลนด์')

但是在MySQL下就有问题了
MySQL已经转为UTF-8编码,插入和查询中文字符都正常,
但是泰文就插入进去就变成“??????”号了,查询出来也是一连串的问号……
插入语句(name字段是varchar类型,是UTF8编码):
INSERT INTO abc(name) VALUES('泰国宾馆:โรงแรมไทยแลนด์')
插入进去变成“泰国宾馆:??????????????”

请问大虾有什么好方法可以解决?解决了泰文,其他文字也不会出问题了。
...全文
329 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhixiao476 2009-09-22
  • 打赏
  • 举报
回复
字符串编码的问题,在连接数据库的时候增加中文编码就可以了。搜下网商有的 。
yezzi 2008-04-23
  • 打赏
  • 举报
回复
这句泰文是外国人发给我们的,在DreamWeaver和UltraEdit里可以正确显示,在网页里也可以正确显示,可以插入到SQL Server,
可插入到MySQL就是出问题……
xiaojing7 2008-04-23
  • 打赏
  • 举报
回复
โรงแรมไทยแลนด์' 怎么打出来的?
yezzi 2008-04-23
  • 打赏
  • 举报
回复
用set names utf8后插入数据报错:

[MySQL][ODBC 3.51 Driver][mysqld-5.0.37-community-nt]Incorrect string value: '\xB9\xFA\xB1\xF6\xB9\xDD...' for column 'name' at row 1
yezzi 2008-04-23
  • 打赏
  • 举报
回复
问题解决了!

是MySQL ODBC驱动版本的问题
原来是3.51,换成5.1就没问题了
huanggeng_8552 2008-04-22
  • 打赏
  • 举报
回复
用set names; 试试看.

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧