Android и SQLite: когда использовать точки с запятой для завершения операторов?

если вы используете rawQuery() или execSQL() методы SQLite на Android, когда вы должны использовать точку с запятой в конце вашего заявления?

On в этом уроке, например, автор использует точку с запятой в инструкции create table (через execSQL), но не в инструкции select (через rawQuery). Например:

Создать Таблицу Инструкция:

private static final String DATABASE_CREATE = "create table "
      + TABLE_COMMENTS + "(" + COLUMN_ID
      + " integer primary key autoincrement, " + COLUMN_COMMENT
      + " text not null);";
database.execSQL(DATABASE_CREATE);

Выберите Заявлении:

Cursor cursor = getReadableDatabase().
  rawQuery("select * from todo where _id = ?", new String[] { id });

это случай, когда операторы, использующие execSQL() методу нужна точка с запятой в конце, но операторы, использующие rawQuery() метод не?

2 ответов


операторы SQLite завершаются точкой с запятой (;). Если один указан, это означает, что это конец команды, и что другие команды могут следовать этой точке с запятой. Если точка с запятой не указана, вся строка принимается за команду.

в этом случае, точка с запятой в CREATE утверждение не имеет значения, так как за ним ничего не следует.


Я никогда не использовал точку с запятой в обоих и он работает