ОБНОВЛЕНО
Я пытаюсь создать класс DBHelper и скопировать все в свой старый код. Однако я не могу ничего добавить в это. Я не знаю, почему, я попытался повторно просмотреть руководство в базе данных, но я не вижу ошибок в своем коде. Не могли бы вы проверить этот код?
DBHelper.Java
public class DBHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "DBName.db";
public static final String TABLE_NAME = "tblSample";
public static final String COL_1 = "ID";
public static final String COL_2= "Title";
public static final String COL_3 = "Content";
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table IF NOT EXISTS " + TABLE_NAME + " " +
"(id integer primary key autoincrement, Title text, Content text) ");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
public boolean insertValue (String title, String cnt) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(COL_2, title);
contentValues.put(COL_3, cnt);
long result = db.insert(TABLE_NAME, null, contentValues);
return result != -1;
//note this code is returning false
}
public Cursor selectSample(){
//I also tried to use this.getReadableDatabase();
SQLiteDatabase db = this.getWritableDatabase();
Cursor res = db.rawQuery( "select * from " + TABLE_NAME, null );
return res;
//this is returning 0 count
}
}
это мой код на MainActivity.java
mydb = new DBHelper(this);
boolean hasError = mydb.insertValue("Title1", "content1");
if (!hasError){
Toast.makeText(getApplicationContext(), "No Error:",Toast.LENGTH_LONG).show();
}else{
Toast.makeText(getApplicationContext(), "Not Inserted:",Toast.LENGTH_LONG).show();
}
Этот код показывает значение Not Inserted:, я не могу вставить в db
Не могли бы вы рассказать мне причину или хотя бы рассказать, как показать сообщение об ошибке при вставке данных. Так что я могу хотя бы знать об ошибке
пожалуйста, опубликуйте журналы ошибок
У меня нет журналов ошибок, так как я использую свой личный телефон для тестирования
я обновил свой вопрос. Извините за недопонимание
попробуйте переустановить ваше приложение
@ALTegani нет, этот код возвращает ложный result != -1
Просто переустановите свое приложение еще раз и всегда используйте sqlitebrowser., чтобы убедиться, что ваши данные вставлены правильно ... Я предлагаю вам использовать Библиотека комнаты в качестве нового преемника
Да, спасибо, я тоже пытаюсь изучить ROOM, просто, у меня сегодня плохое настроение.
Отладили пошагово?