Utopia Database is light and fast database library for Dart. It is designed to be simple and easy to use. It currently supports only MariaDB database.
Add the following to your pubspec.yaml
file:
dependencies:
utopia_database: <latest>
utopia_database_adapter_mariadb: <latest>
import 'package:utopia_database/utopia_database.dart';
import 'package:utopia_database_adapter_mariadb/utopia_database_adapter_mariadb.dart';
void main() async {
final mariadb = await MariaDB.init(
host: 'localhost', port: 3306, user: 'user', password: 'password');
final database = Database(mariadb);
print('connection initialized');
database.setDefaultDatabase('applications');
database.setNamespace('_myproject');
final exists = await database.exists(collection: Database.metadata);
if (!exists) {
await database.create();
print('metadata created');
}
final userExists = await database.exists(collection: 'users');
if (!userExists) {
await database.createCollection('users', [
Attribute(
id: 'name',
type: Database.varString,
isRequired: true,
size: 255,
),
Attribute(
id: 'email',
type: Database.varString,
isRequired: true,
size: 255,
),
Attribute(
id: 'description',
type: Database.varString,
isRequired: true,
size: 2550,
),
], []);
print('users collection created');
}
}
To add new adapter for different database, follow the steps in add database adapter.