groovy
dependencies {
implementation 'org.dbtools:dbtools-android:10.2'
}
public class MyDatabase extends AndroidBaseManagerDatabase {
public static final String DATABASE_NAME = "my_database";
public static final int DATABASE_VERSION = 1;
@Override
public void setupDatabase(DatabaseWrapper databaseWrapper) {
CreateTableBuilder.createTable(TABLE_NAME)
.primaryKey(ID)
.stringColumn(NAME)
.integerColumn(AGE)
.stringColumn(ADDRESS)
.end()
.execute(databaseWrapper);
}
}
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
MyDatabase database = DatabaseManager.create(MyDatabase.class);
database.setDatabaseName(DATABASE_NAME);
database.setDatabaseVersion(DATABASE_VERSION);
DatabaseManager.initializeInstance(database);
}
}
public void insertData(Person person) {
SQLiteDatabaseWrapper databaseWrapper = DatabaseManager.getInstance().getDatabaseWrapper();
try {
ContentValues values = new ContentValues();
values.put(MyDatabase.NAME, person.getName());
values.put(MyDatabase.AGE, person.getAge());
values.put(MyDatabase.ADDRESS, person.getAddress());
long result = databaseWrapper.insertOrThrow(TABLE_NAME, values);
if (result != -1) {
Log.d(TAG, "Data inserted successfully!");
}
} finally {
databaseWrapper.close();
}
}