Как использовать строковую константу при установке значения столбца SQLite по умолчанию - PullRequest
0 голосов
/ 04 сентября 2018

Я знаю, что это, вероятно, простая синтаксическая ошибка, но я новичок в SQLite, и я искали все выше и ниже для этого простого ответа, но я не могу. Я знаю, что можно использовать строковые константы при создании таблицы, как я делал это раньше, но при установке текстового значения по умолчанию это не работает для меня. Помогите пожалуйста!

public static final String USER_TABLE = "USER_TABLE";

   //works fine here!
   db.execSQL("CREATE TABLE " + USER_TABLE+
            "(_id INTEGER PRIMARY KEY AUTOINCREMENT,"
            + FFDBSchema.Colz.MODE_ID_COL + "TEXT DEFAULT NULL,"
            //doesn't work here!
            + FFDBSchema.Colz.TABLE_ID_COL + "TEXT DEFAULT "  + 
            USER_TABLE+","
            + FFDBSchema.Colz.ANOTHER_TABLE+ "TEXT,"  + 

Строковые константы работают в других ситуациях, но просто ли я не могу использовать строковую константу для установки значения столбца по умолчанию? Должен ли я вставить его?

1 Ответ

0 голосов
/ 04 сентября 2018

Вы должны заключать строки в одинарные кавычки, поэтому вам нужно сделать что-то вроде этого:

public static final String USER_TABLE = "USER_TABLE";

db.execSQL("CREATE TABLE " + USER_TABLE+
        "(_id INTEGER PRIMARY KEY AUTOINCREMENT,"
        + FFDBSchema.Colz.MODE_ID_COL + "TEXT DEFAULT NULL,"
        + FFDBSchema.Colz.TABLE_ID_COL + "TEXT DEFAULT '" +USER_TABLE+"',"
        + FFDBSchema.Colz.ANOTHER_TABLE+ "TEXT,"  + 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...