读取sql server中文数据乱码问题
服务器操作系统是英文版windows2000 server,默认语言设为简体中文
数据库系统是英文版sql server2000
用asp页面从数据库中读取数据中文显示为乱码,我已将中文字段设为nvchar类型
在不改动os设置的前提下如何使中文数据正确显示?
小弟菜鸟,烦请大侠详细说明解决方法,谢谢!
问题点数:20、回复次数:20Top
1 楼quanyi(长生天)回复于 2005-01-07 15:16:03 得分 0
markTop
2 楼hah(hah)回复于 2005-01-07 15:30:54 得分 0
在线急等求解Top
3 楼fhercules(天际流星紫竹)回复于 2005-01-07 15:39:22 得分 0
你看看是否为 utf-8字符的关系Top
4 楼fhercules(天际流星紫竹)回复于 2005-01-07 15:40:15 得分 0
这个以前有人问过类似的问题
你用查询分析器看到的是否为乱码Top
5 楼hah(hah)回复于 2005-01-07 15:43:01 得分 0
以前的帖子我也看过,查询分析器中看到的也是乱码。
utf-8字符是什么意思啊?Top
6 楼hah(hah)回复于 2005-01-08 07:58:36 得分 0
真的没人知道吗?Top
7 楼hah(hah)回复于 2005-01-08 09:12:40 得分 0
自己顶Top
8 楼ERICLU5188(ERIC)回复于 2005-01-08 10:17:30 得分 10
查看数据库的排序名称是不是 Chinese_PRC_CL_AS 再查看表各个字段的排序是不是 Chinese_PRC_CL_AS
一定要统一过来Top
9 楼hah(hah)回复于 2005-01-08 12:34:00 得分 0
统一了排序名称还是没什么作用阿,而且好像没有_CL_AS的名称吧
在网页中改成charset=UTF-8也试过了,愁死我了
再有,已经存在的数据库如何改变它的排序方法阿?Top
10 楼surferc((大妹子,缘分啊!))回复于 2005-01-08 13:34:33 得分 0
这跟数据应该没啥关系,问题是出在你使用了英文的操作系统。
打开所有 *.asp 文件,并在第一行插入 <%@ codepage="936" %>
例外情况:
①,如果第一行是以 <%@ LANGUAGE="VBSCRIPT" %> 开头,
则把第一行改为:<%@ codepage="936" LANGUAGE="VBSCRIPT" %>
Top
11 楼wyb0026(小小)回复于 2005-01-08 13:34:36 得分 0
asp 有问题吧
Top
12 楼surferc((大妹子,缘分啊!))回复于 2005-01-08 13:35:42 得分 0
补充一点就是上面 ERICLU5188(ERIC) ( ) 说的
==========================
查看数据库的排序名称是不是 Chinese_PRC_CL_AS 再查看表各个字段的排序是不是 Chinese_PRC_CL_AS 一定要统一过来
Top
13 楼hah(hah)回复于 2005-01-08 15:26:34 得分 0
加了<%@ codepage="936" %>还是问题依旧阿Top
14 楼surferc((大妹子,缘分啊!))回复于 2005-01-08 15:45:31 得分 0
那先找找乱码到底出在哪里然后解决。
不从数据库记取内容,直接在asp页面写入中文看是否为乱码,确认一下是数据库读取的内容为乱码还是静态的也是乱码。
Top
15 楼hah(hah)回复于 2005-01-08 15:54:15 得分 0
静态的不是乱码,显示正常。
就是从数据库里取出的中文是乱码,怎么办啊?Top
16 楼surferc((大妹子,缘分啊!))回复于 2005-01-08 17:42:08 得分 10
那你这样在数据库里面输入"中文"然后你用asp读出来把结果贴上来看看到底是什么样的乱码Top
17 楼hah(hah)回复于 2005-01-08 19:30:53 得分 0
有一点忘了说了,如果我把操作系统的默认语言设置为西方语言,那么从sql server中取出的数据显示就正常了,可是由于其他原因,必须使用简体中文为默认语言Top
18 楼surferc((大妹子,缘分啊!))回复于 2005-01-10 10:39:50 得分 0
那这个就是跟操作系统有关了Top
19 楼hah(hah)回复于 2005-01-10 12:53:25 得分 0
我试过新建的数据库下数据没问题了,可是导入的原数据库的数据仍然是乱码无法解决,是不是以前的数据只能重新输入了?
Top
20 楼hah(hah)回复于 2005-01-11 16:01:16 得分 0
既然没有人回答就结贴了Top





