Java Error net.ucanaccess.jdbc.UcanaccessSQLException:意外令牌:;要求:(

时间:2015-10-23 12:49:50

标签: java sql

我的代码:

try{
    //get DB Connection
    dbConnect = DatabaseConnection.dbConnect();

    //creating statement
    getTableDataStatement = dbConnect.createStatement();
    String getTableData = "SELECT table_available FROM table;";
    ResultSet rs = getTableDataStatement.executeQuery(getTableData);

    //geting value
    while(rs.next()){
        //tableNoFromDb.add(rs.getInt("tableNo"));
        tableStatus.add(rs.getString("table_available"));
    }

    //close everything
    rs.close();
    getTableDataStatement.close();
    dbConnect.close();   

} catch(SQLException se) {
    se.printStackTrace();
}

我能够初始化与db的连接,但我不断收到此错误。试图删除;还是有错误

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

您似乎调用了表table,这只会导致问题。

请使用非保留关键字的名称。

答案 1 :(得分:-1)

我遇到了同样的问题 我的问题是net.ucanaccess.jdbc.UcanaccessSqlException: unexpected token:)

我在SQL语句中添加了一个",#34;(逗号)当我删除了额外的逗号时它正常工作

错误的SQL语句

String sql="insert into ApplyForLeaveResult(User_ID,Leave_Type,Start_Date,End_Date,Total,Reason,Status,Command) values('"+User_ID1+"','"+Leave_Type1+"','"+Start_Date1+"','"+End_Date1+"','"+Total1+"','"+Reason1+"','"+Status1+"','"+Command1+"',)";

更正SQL Statemet

String sql="insert into ApplyForLeaveResult(User_ID,Leave_Type,Start_Date,End_Date,Total,Reason,Status,Command) values('"+User_ID1+"','"+Leave_Type1+"','"+Start_Date1+"','"+End_Date1+"','"+Total1+"','"+Reason1+"','"+Status1+"','"+Command1+")";