我正在使用IBM驱动程序来连接DB2数据库。一切都很完美,直到我用PC用西里尔语用户名启动它。在这种情况下,驱动程序抛出错误:
com.ibm.db2.jcc.am.SqlException: [jcc][10402][11146][3.63.123] Cannot convert Unicode string to Ebcdic string. ERRORCODE=-4220, SQLSTATE=null
。
我找到的唯一方法是从具有正确名称的其他用户名启动应用程序,但System.setProperty(“user.name”,“user”)不起作用。我可以使用Duser.name = user,但它仅在我使用.bat文件启动应用程序时才有效,但如果我在NetBeans的项目属性中使用此键进行编译,则无效。
有人可以至少帮助解决其中一个问题吗?
upd:我用来连接DB2的代码
public Connection Connect(String url, Connection con){
Class.forName("com.ibm.db2.jcc.DB2Driver");
String User ="energy";
String Pass ="energy";
con = DriverManager.getConnection(url,User,Pass);
return con;
}
登录/密码不是西里尔文,只有wundows用户名是。正如我发现的那样,这是DB2驱动程序的一个错误,但我怎样才能解决这个问题呢?