initIndexes method

Future<void> initIndexes()

Implementation

Future<void> initIndexes() async {
  final pragma = await db.tableIndexes(name);
  final cols = pragma.map((row) => row['name']);
  for (var attr in attributes) {
    final idxName = '${name}_${attr.name}';
    if (attr.isIndex && !cols.contains(idxName)) {
      await query(
        'CREATE ${attr.isUnique ? 'UNIQUE' : ''} INDEX "$idxName" ON "$name"("${attr.name}")',
      );

      print('attr: $idxName is now index');
    }
  }
}