当前位置:主页>delphi7/进销存和数据库> 文章内容

100分相送,用bde连接oracle9i时,dbgrid显示数据时中文为乱码

发布时间:2010-02-01 | QQ免费站
1楼: 用bde连接oracle9i时,dbgrid显示数据时中文为乱码 据说可以在bde里面设置语言,但找不到, 那位高人有什么好的解决方法?(别人的一个老程序,害苦我了,我从来都是用ado的)

字串5

2楼: 看看字符集与数据库是否相符? 在“HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE“中搜索 NLS_LANG,共有3处

字串1

3楼: 你试试用Oracle客户端连接到数据库服务器,查看表中的数据,看看是否乱码? 如果乱码,就是字符集设置的问题 字串9

4楼: XIANGUO: 1、在“HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE“中搜索 NLS_LANG 三个值分别为:NA,NA,SIMPLIFIED CHINESE_CHINA_ZHS16GBK 我看不出什么毛病 2、我用sql plus 查询时,数据库数据显示不是乱码 字串8

5楼: 那你的DBGrid.Font?
字串8

6楼: 宋体
字串8

7楼: 还是没有解决问题。。。。 自己顶下先 字串7

8楼: 你用dba进去连接数据库,显示数据看看汉字是什么样子的~~~~ 或者用sqlplus查询出来看看??? 如果有问题的话,证明是oracle的字符集有问题
字串9

9楼: sql plus 查询出来不是乱码

字串9

10楼: 那你BDE的Lang Driver是什么? ascii ANSI 有几个地方你都改一下试试: 1、打开BDE Administrator 2、Configuration页面中,Configuration->Drivers->Native->Oracle中的LangDriver=ascii ANSI 3、Configuration页面中,Configuration->System->Init中的LangDriver=ascii ANSI 4、你所配置的别名中的LangDriver=ascii ANSI 字串8

11楼: 谢谢hongxing_dl,我都试了一遍,还是不行; 另外 ,我用bde和sql server联了一下,没有乱码的现象 大家还有什么办法? 是不是oracle9i的问题啊 字串1

12楼: 另外 ,我用ado连接时,中文可以指出显示,没有乱码现象
字串7

13楼: 估计是delphi7的问题,只能在乱码下调试了, 程序拷到个别人机器上不是乱码; 是不是bde的驱动问题、? 有没有专门的中文驱动? 字串3

14楼: 把客户端的Oracle字符集改成与服务器一致就可以了。

字串5