setBool method
Future
setBool(
- dynamic tableName,
- bool boolValue
)
Implementation
Future<dynamic> setBool(tableName, bool boolValue) async {
int value;
Directory documentsDirectory = await getApplicationDocumentsDirectory();
String path = join(documentsDirectory.path, "$tableName.db");
Database _database = await openDatabase(path, version: _databaseVersion,
onCreate: (Database db, int version) async {
await db.execute(
'CREATE TABLE ${tableName}1 (${tableName}_key INTEGER, $tableName INTEGER)');
});
Database db = _database;
var getValue;
if (boolValue == true) {
value = 1;
getValue = Sqflite.firstIntValue(
await db.rawQuery('SELECT COUNT(*) FROM ${tableName}1'));
if (getValue == 0) {
print("data will be inserted");
return await db.transaction((txn) async {
return await txn.rawInsert(
'INSERT INTO ${tableName}1(${tableName}_key, $tableName) VALUES(?, ?)',
[1, value]);
});
} else {
print("data will be updated");
return await db.rawUpdate(
'UPDATE ${tableName}1 SET ${tableName}_key = ?, $tableName = ?',
[1, value]);
}
} else {
value = 0;
getValue = Sqflite.firstIntValue(
await db.rawQuery('SELECT COUNT(*) FROM ${tableName}1'));
if (getValue == 0) {
print("data will be inserted");
return await db.transaction((txn) async {
return await txn.rawInsert(
'INSERT INTO ${tableName}1(${tableName}_key, $tableName) VALUES(?, ?)',
[1, value]);
});
} else {
print("data will be updated");
return await db.rawUpdate(
'UPDATE ${tableName}1 SET ${tableName}_key = ?, $tableName = ?',
[1, value]);
}
}
}