Как вставить данные onCreate в базу данных Sqlite, простой способ?

#android #database #sqlite #android-studio #insert

#Android #База данных #sqlite #android-studio #вставить

Вопрос:

я хочу вставить некоторый текст в свою базу данных sqlite с помощью метода onCreate.

Я работаю над этим часами (это не работает …) (я новичок @ android).

Использование andoid studio. Пожалуйста, покажите мне простой способ с onCreate. Он показывает мне только первый журнал: Log.d («Операция с базой данных», «Созданная база данных»);

 public class DatenbankHandler extends SQLiteOpenHelper {
public static final int database_version = 1;
public static final String DATABASE_NAME = "adventure.db";
public static final String dialog_var = "dialog";
public static final String gadget_row = "gadget";
public static final String TABLE_NAME = "liam";

public String Create_Query= "CREATE TABLE"   TABLE_NAME   " (_ID INTEGER PRIMARY KEY AUTOINCREMENT,"   dialog_var   " TEXT, "   gadget_row   " TEXT);";


public DatenbankHandler(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
    super(context, DATABASE_NAME, null, database_version);
    Log.d("Database op", "Database created");
}


@Override
public void onCreate(SQLiteDatabase db) {
    // Create table
    db.execSQL(Create_Query);
    Log.d("Database Table", "Table created");

    // Insert into database
    db.execSQL("INSERT INTO liam ("   dialog_var   ","   gadget_row   ") VALUES('I'm Liam', null)");
    Log.d("Database insert", "success");

}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

}
  

}

Комментарии:

1. сначала создайте свою таблицу, а затем вставьте данные в таблицу

Ответ №1:

Что-то вроде этого должно работать…

 public class SharedPreferencesManager {
    private SQLiteDatabase banco;
    private Context _context;

    private final String DATABASE_NAME = "blablabla";


     //0 - private (apenas essa aplicação pode usar o banco).
     //1 - read for all (others apps can read this db).
     //2 - write for all (others apps can write on this db).
    private final int DATABASE_ACESS = 0;
    private a="col_name_1",b="col_name_2",c="col_name_3",table_name="blablabla";
    private final String SQL_CREATE_TABLE_BLA = "CREATE TABLE IF NOT EXISTS "   table_name   "( "  
            a " INTEGER PRIMARY KEY AUTOINCREMENT,"  
            b " INTEGER UNIQUE, "  
            c " TEXT );";

    public SqliteManager(Context context) {
        this._context = context;

        this.banco = context.openOrCreateDatabase(DATABASE_NAME, DATABASE_ACESS, null);

        this.banco.execSQL(SQL_CREATE_TABLE_BLA);

        insert()

    }

    private void insert(int number, String txt){
        ContentValues values = new ContentValues();
        values.put(this.b, number);
        values.put(this.c, txt);

        this.banco.insert(this.table_name, null, values);
    }
}
  

Вам нужно создать экземпляр этого класса SharedPreferencesManager sqlite = new SharedPreferencesManager (ACTIVITY_OR_CONTEXT); и просто использовать sqlite.YOUR_METHOD() .

Комментарии:

1. Спасибо, очень полезно. Работает для меня: D Хорошего дня!