1

当我在 PL/SQL Developer 中查询具有阿拉伯文本的数据时,它显示为问号 (????)。

我确信数据正确存储在数据库中,因为它正确显示在网站上,也在服务器上。

所以我认为这是与我的 PL/SQL Developer (v8.0.4.1514) 有关的问题。

  • 有没有办法改变 PL/SQL Developer 显示/编码阿拉伯文本的方式?

  • 如何检查存储阿拉伯文本的格式/编码?

我的问题可能遗漏了一些细节,所以只要问我并记住我是 PL/SQL 和 SQL 的初学者。

谢谢你。

4

4 回答 4

1

我找到了一个解决方案(它也可能适用于显示为 ' ????' 的其他语言)

我将NLS_LANG注册表更改为AMERICAN_AMERICA.AL32UTF8

(我NLS_LANG在注册表中找到了 3 ,检查每一个,或者像我一样将它们全部更改。)

然后重新启动 PL/SQL 开发人员,测试查询和阿拉伯文本正常显示。

谢谢你们。

于 2012-11-18T08:46:05.333 回答
1

你能用SET NLS_LANGUAGE阿拉伯语吗ALTER SESSION SET NLS_LANGUAGE = 'ARABIC'

它可能是解决方案,如果不是,您能否提供有关 O/S 及其版本的更多信息,......等等

于 2012-11-17T12:24:17.297 回答
0

可能安装了多个 oracle 实例,因此您必须为所有实例设置默认编码。只需按照以下说明操作:

  1. 打开 reg 编辑并转到 Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Oracle. 每个实例都有一个或多个键:

在此处输入图像描述

  1. 对于每个键,右键单击并创建一个名为(NLS_LANG如果还没有)的字符串值:

在此处输入图像描述

  1. 然后将它的值设置为AMERICAN_AMERICA.AL32UTF8并完成,只需在 PL/SQL 中刷新您的查询。

在此处输入图像描述

于 2020-11-16T10:34:43.187 回答
-1

在 registery 中查找NLS_LANG并将其值从 更改AMERICAN_AMERICA.WE8MSWIN1252AMERICAN_AMERICA.UTF8 对我来说对波斯字符来说很好。

于 2018-05-14T08:50:31.560 回答