我收到类似“SQLite 异常接近”)“的错误:语法错误(代码 1)
这是我的创建表命令
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_NAME = "attendance.db";
private static final String TEXT_TYPE = " TEXT";
private static final String COMMA_SEP = " ,";
private static final String SQL_CREATE_ENTRIES = "CREATE TABLE " +
TableElement.TABLE_NAME + " (" +
TableElement.ID_COLUM + " INTEGER PRIMARY KEY AUTOINCREMENT ," +
TableElement.IMAGE_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.NAME_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.GARDIAN_NAME_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.CONTRACT_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.PRESENT_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.ABSENT_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.LATE_COLUM + TEXT_TYPE + COMMA_SEP +
TableElement.CHECKED_BUTTON_COLUM + TEXT_TYPE + COMMA_SEP +
" )";
最佳答案
您不需要最后一个 COMMA_SEP
。
当有疑问时,打印 SQL 查询,这些语法错误就会变得更加明显。在本例中,错误消息中的 )
表明错误已接近尾声。
其他想法:
- 其中一些静态变量,例如。
COMMA_SEP
使您的代码更难阅读。 - 您的列名称属性上的 COLUMN 拼写错误。
关于java - ") "附近的 SQLite 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31846253/