sqlStream method

SqliteArrowBatches sqlStream({
  1. required String database,
  2. required String query,
  3. Object? params,
  4. List<String>? namespace,
})

Implementation

SqliteArrowBatches sqlStream({required String database, required String query, Object? params, List<String>? namespace}) {
  return (() async* {
    final result = await executeSql(database: database, query: query, params: params, namespace: namespace);
    if (result is SqliteSqlStatement) {
      throw RoomServerException("SQL statement did not return rows; rows_affected=${result.rowsAffected}");
    }
    final opened = result as SqliteSqlQuery;
    try {
      yield* readSqlQuery(queryId: opened.queryId);
    } finally {
      await closeSqlQuery(queryId: opened.queryId);
    }
  })();
}