connect method

  1. @override
Future<void> connect()
override

Establishes a connection to the database.

Implementation

@override
Future<void> connect() async {
  final settings = ConnectionSettings(
    host: _config['host'] ?? 'localhost',
    port: _config['port'] ?? 3306,
    user: _config['username'] ?? 'root',
    password: _config['password']?.toString().isEmpty == true
        ? null
        : _config['password'],
    useSSL: _config['ssl'] ?? false,
    timeout: _config['timeout'] != null
        ? Duration(milliseconds: _config['timeout'])
        : const Duration(seconds: 30),
  );

  _connection = await MySqlConnection.connect(settings);
  await _ensureDatabaseSelected(_config['database']);
}