用java从Oracle数据库读取阿拉伯语数据

问题描述 投票:0回答:1

我想从数据库读取数据。数据为阿拉伯语。我的数据库的字符集是AL32UTF8。 当我尝试检索数据时,我得到“???” 请回复如何解决这个问题 这是代码

public static void main(String[] args) {
// TODO Auto-generated method stub
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String username = "hr";
String password = "hr";
String sql = "SELECT WORDS_URDU FROM FINALLY WHERE DFFGG=430";
Connection connection;
try {
connection = DriverManager.getConnection(url, username, password);
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery(sql);
while(rs.next())
{
System.out.println(rs.getString(1));
}
//System.out.println(statement.execute(sql));
connection.close();
} catch (SQLException e) {
System.err.println(e);
}
}
java database oracle arabic
1个回答
1
投票

首先要判断表中的数据是否存储正确。如果是,则显示有问题。

检查您是否在程序运行的客户端为

NLS_LANG
环境变量设置了正确的值。

确保您的程序运行所在的终端程序能够显示所需的字符。

要确定数据库内容是否已损坏,您可以尝试执行“select dump(words_urdu) from finally where dffgg=430;”。这将显示存储在数据库中的实际字符。如果在数据插入时未正确设置

NLS_LANG
环境变量,数据库中的数据可能会损坏。

© www.soinside.com 2019 - 2024. All rights reserved.