0
Я создал две таблицы с внешним ключом. Вставка данных прошла успешно, но когда я использую инструкцию SELECT, данные не отображаются. Код ниже.Почему мой оператор Select не возвращает данные?
public static final String CREATE_TABLE_BLOCK_LIST = "CREATE TABLE " + TABLE_BLOCK_LIST
+ "(" + ID_BLOCK_LIST + " INTEGER PRIMARY KEY AUTOINCREMENT DEFAULT 0,"
+ ORIGINATING_ADDRESS + " TEXT)";
public static final String CREATE_TABLE_BLOCKED_SMS = "CREATE TABLE " + TABLE_BLOCKED_SMS
+ "(" + ID_BLOCKED_SMS + " INTEGER PRIMARY KEY AUTOINCREMENT DEFAULT 0, "
+ MESSAGE_BODY + " TEXT,"
+ FK_ID_BLOCK_LIST + " INTEGER," +
"FOREIGN KEY(" + FK_ID_BLOCK_LIST + ") REFERENCES " + TABLE_BLOCK_LIST + "(" + ID_BLOCK_LIST +"))";
ЗЕЬЕСТ
SQLiteDatabase db = this.getWritableDatabase();
//cursor = db.rawQuery("SELECT * FROM " + TABLE_BLOCKED_SMS, null);
cursor = db.rawQuery("SELECT * FROM table_block_list " +
"JOIN table_blocked_sms " +
"ON table_block_list.id_block_list = table_blocked_sms.id_blocked_sms" , null);
Просьба направить меня, где проблема.
большое спасибо его работы –
жаль, что я изменил код согласно моему требованию. теперь снова его не работает курсор = db.rawQuery («SELECT * FROM table_block_list» + «LEFT OUTER JOIN table_blocked_sms» + «ON table_block_list.id_block_list = table_blocked_sms.fk_id_block_list», null); пожалуйста, помогите @ yk11 –
Что вы вернетесь? нет результатов? код ошибки? Можете ли вы начать с того, что обе таблицы имеют данные и используют внутреннее соединение? – yk11