Java 找不到UCanAccess 4.0.2大写列名
在我的java程序中,我想使用UCanAccess查询*.mdb中的一些列。但是,有些字符似乎是错误的,因为它将所有列名转换为大写。例如,在一个平台上,列名Java 找不到UCanAccess 4.0.2大写列名,java,ucanaccess,columnname,Java,Ucanaccess,Columnname,在我的java程序中,我想使用UCanAccess查询*.mdb中的一些列。但是,有些字符似乎是错误的,因为它将所有列名转换为大写。例如,在一个平台上,列名egitim变成大写的ÈGITIM,而在另一个平台上变成ÈGİTİM。我希望我的程序独立于平台。 但是,如果我在查询中写入egitim,则它在第一个平台上工作正常,而在第二个平台上则出现错误。如果这次我写EGİTİM,它在第一个平台上不起作用。有没有办法以编程方式设置UCanAccess的字符集 您可以看到下面的代码: Class.forNa
egitim
变成大写的ÈGITIM
,而在另一个平台上变成ÈGİTİM
。我希望我的程序独立于平台。
但是,如果我在查询中写入egitim
,则它在第一个平台上工作正常,而在第二个平台上则出现错误。如果这次我写EGİTİM
,它在第一个平台上不起作用。有没有办法以编程方式设置UCanAccess的字符集
您可以看到下面的代码:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
Connection conn = DriverManager.getConnection(JAtama.url);
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select distinct egitim from dersler");
最后一行给出了net.ucanaccess.jdbc.UcanaccessSQLException:UCAExc:::4.0.2用户缺少权限或找不到对象:EGITIM
exception
这两个平台都是macOS Sierra。但其中一个是土耳其语,另一个是英语。(土耳其语大写字母i为İ。这是UCanAccess 4.0.2及更早版本中的一个已知问题。所需的修复程序已合并到主分支中,并将包含在UCanAccess的下一版本中。请显示您的代码,以便人们可以复制该问题。您还可以指定您正在使用的平台吗?我可以使用UCanAccess 4.0.2创建此问题,并将其报告给UCanAccess开发团队。