Boa tarde, depois que realizei a refatoração do código na aula, quando clico ou tento salvar um contato novo aparece este erro. Não sei o que possa estar errado. Tentei fazer alguns ajustes, porém nada funcionou. contatacs_dao
import 'package:sqflite/sqflite.dart';
import '../../models/contacts.dart';
import '../app_database.dart';
class ContactDao {
static const String tableSql = 'CREATE TABLE $_tableName ('
'$_id NUMBER INTERGER,'
'$_name TEXT, '
'$_accountNumber INTERGER)';
static const String _tableName = 'contacts';
static const String _id = 'id';
static const String _name = 'name';
static const String _accountNumber = 'account_number';
Future<int> save(Contact contact) async {
final Database db = await createDataBase();
Map<String, dynamic> contactMap = _toMap(contact);
return db.insert(_tableName, contactMap);
}
Map<String, dynamic> _toMap(Contact contact) {
final Map<String, dynamic> contactMap = Map();
contactMap[_name] = contact.name;
contactMap[_accountNumber] = contact.accountNumber;
return contactMap;
}
Future<List<Contact>> findAll() async {
final Database db = await createDataBase();
final List<Map<String, dynamic>> result = await db.query(_tableName);
List<Contact> contacts = _toList(result);
return contacts;
}
List<Contact> _toList(List<Map<String, dynamic>> result) {
final List<Contact> contacts = [];
for (Map<String, dynamic> row in result) {
final Contact contact = Contact(
row[_id],
row[_name],
row[_accountNumber],
);
contacts.add(contact);
}
return contacts;
}
}
app_database
import 'package:bytebank/database/DAO/contacts_dao.dart';
import 'package:path/path.dart';
import 'package:sqflite/sqflite.dart';
Future<Database> createDataBase() async {
// Caminho para o banco de dados e o nome do banco
final String path = join(await getDatabasesPath(), 'bytebank.db');
return openDatabase(
path,
onCreate: (db, version) {
// Vai executar a query do sqlite
db.execute(ContactDao.tableSql);
},
version: 1,
// limpar o banco (descer uma version e depois voltar para 1 com isso
// descomentado)
// onDowngrade: onDatabaseDowngradeDelete,
);
}