使用UCanAccess获取ERROR“意外令牌:表名

时间:2016-01-09 22:40:49

标签: ucanaccess

与之前有关“意外令牌”的问题相关

我收到以下错误

         UCAExc:::3.0.3.1 unexpected token: $BRANDRAP

当我在NB IDE中运行以下代码时

试       {         的Class.forName( “net.ucanaccess.jdbc.UcanaccessDriver”);

    Connection conn =  DriverManager.getConnection("jdbc:ucanaccess://E:/DEV05/AmexDW/$TPMAIN.MDB");
    Statement s = conn.createStatement();
    ResultSet rs = s.executeQuery("SELECT [l BL Item Headers].[BL Counter], [l BL Item Headers].[BL A/C], [l BL Item Headers].[BL Entry] FROM [l BL Item Headers]");

    while (rs.next()) 
    {
        System.out.print(rs.getString(2));
        System.out.print(" :  ");
        System.out.print(rs.getString(3));
        System.out.print(" :  ");
        System.out.print(rs.getString(4));
        System.out.print("\n"); 
    }  
  } 
  catch (SQLException e) 
  {
    System.out.println(e.getMessage());
    return;
  }
  catch (ClassNotFoundException nf) 
  {
    System.out.println(nf.getMessage());
    return;
  }

NB。 $ BRANDRAP是$ TPMAIN.MDB数据库中的一个表,但我正在从中选择     表[l BL标题项目]

1 个答案:

答案 0 :(得分:1)

这是因为在连接时抛出了异常。由于存在错误,以前的版本中不支持表格或列名中的$。相关的3.0.3修复程序没有解决特定情况(当表名以$开头时)。完整的修复将在3.0.4中。它很快就会发布。