Eclipse ADT Juno .JTDS未建立并且一直返回“JVM不支持Charset 0x0904000128 / Cp850”。 Jtds 1.3.0

时间:2014-11-10 04:33:08

标签: android jdbc jvm jtds

我曾尝试过以下代码,并且在catch异常中不断返回null。我可以知道为什么以及如何解决这个问题?

Connection conn = null;
try
{
    //String driver = "";
    Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();
    String connString ="jdbc:jtds:sqlserver://hostNameA/databaseNameAAA;integratedSecurity=true";
    conn = DriverManager.getConnection(connString, username, password);
    Log.e(TAG,"DB Connection Established");
    conn.close();

}
catch(Exception e)
{
    Log.e(TAG,"ERROR: Exception Caught! - " + e.getMessage());
    e.printStackTrace();
}

谢谢。

编辑: 我正在使用jtds-1.3.1.jar 每次它到达线 conn = DriverManager.getConnection(connString,username,password);

错误将在catch中捕获,它将显示为

错误:异常被捕! - null

现在我用jtds-1.3.0.jar文件替换了jtds-1.3.1.jar,现在我收到了这个错误

“错误:异常被捕获! - JVM不支持Charset 0x0904000128 / Cp850。”

EDIT2:

我在JAVA(桌面)中测试了这些代码并且它可以正常工作,它能够连接到数据库并从服务器检索所有数据但是当我在android中的异步任务中使用它时我得到了“ JVM不支持Charset“。

我该如何解决这个问题? 我曾尝试重新安装JDK,但它不起作用。它仍然是一样的。

1 个答案:

答案 0 :(得分:0)

“JVM不支持Charset 0x0904000128 / Cp850。”

我在论坛帖子here中发现了相同的错误消息。回应是

  

此问题是由于服务器上安装了JVM。   这是一个有限的语言包(如美国/英语专用包)。

     

您必须更改JVM才能解决此问题。

接着是

  通过使用完整语言包

重新安装JVM解决了

问题

由于代码页850是旧版的Latin1版本(ref:here),您可能还尝试将项目的源代码更改为Windows-1252或ISO-8859-1,并查看当前的JVM可以在下载和安装另一个JVM之前处理它。