0

我在 ms sql2000 中有一个表,其列定义为 nvarchar

当在java中查询这个表时,我得到这个列的数据,如下所示:

يا هلا بالشباب الØلوين يا شباب ا٠شلونكو؟ .

当我用 adodb 尝试 php 时,我得到了应有的数据,用阿拉伯语。

但我需要使用 java 而不是 php,请任何人帮助我。

  • 我使用普通的 sql 语句“从新闻中选择 *”
  • 我使用最新的 Microsoft jdbc 驱动程序(sqljdbc4.jar)。
  • 我无法直接访问 sql server。
4

2 回答 2

0

在我看来,这就像一个编码问题,请确保您在 Java 中使用正确的编码来获取文本。显然是 unicode 的一些变体。

于 2009-11-08T15:27:09.337 回答
0

在每个字符处理步骤(获取数据、修改数据、保存数据、显示数据等)确保您使用的是UTF-8字符编码。

如果它是一个客户端应用程序,您通常只需要在数据库表中担心它,如果有必要还需要 JDBC 连接字符串。

如果是 web 应用程序,那么您需要考虑更多:请求和响应编码。对于 GET 请求,这是一个应用服务器设置,对于 POST 请求和所有响应,您可以在适当的请求/响应对象中设置它。

于 2009-11-08T15:48:53.473 回答