DatabaseActions extension

Reusable database operations shared across repositories.

on

Methods

deleteCachedData() → Future<void>

Available on AppDatabase, provided by the DatabaseActions extension

Clears all cached data while preserving user identity.
deleteEverything() → Future<void>

Available on AppDatabase, provided by the DatabaseActions extension

Deletes all rows from every table, fully resetting the database.
getOrCreateSemester(int year, int term, {bool? inCourseSemesterList, bool? inScoreSemesterList}) → Future<Semester>

Available on AppDatabase, provided by the DatabaseActions extension

Returns an existing semester row, or creates one if missing.
upsertClass({required String code, required int semesterId, required String nameZh, String? nameEn}) → Future<int>

Available on AppDatabase, provided by the DatabaseActions extension

Returns the ID of an existing class row, or creates one.
upsertClassroom({required String code, required String nameZh, String? nameEn}) → Future<int>

Available on AppDatabase, provided by the DatabaseActions extension

Returns the ID of an existing classroom row, or creates/updates one.
upsertCourse({required String code, required double credits, required int hours, required String nameZh, String? nameEn}) → Future<int>

Available on AppDatabase, provided by the DatabaseActions extension

Returns the ID of an existing course row, or creates/updates one.
upsertCourseOffering({required int semesterId, String? number, required String nameZh, String? nameEn, Value<String?> courseCode = const Value.absent(), Value<double?> credits = const Value.absent(), Value<int?> hours = const Value.absent(), Value<int?> phase = const Value.absent(), Value<String?> status = const Value.absent(), Value<String?> language = const Value.absent(), Value<String?> remarks = const Value.absent(), bool? inCourseTable}) → Future<int>

Available on AppDatabase, provided by the DatabaseActions extension

Returns the ID of an existing course offering, or creates/updates one.
upsertStudent({required String studentId, String? name}) → Future<int>

Available on AppDatabase, provided by the DatabaseActions extension

Returns the ID of an existing student row, or creates/updates one.
upsertTeacherSemester({required String code, required int semesterId, required String nameZh, String? nameEn, String? email, int? departmentId, String? title, double? teachingHours, String? officeHoursNote, DateTime? fetchedAt}) → Future<int>

Available on AppDatabase, provided by the DatabaseActions extension

Returns the ID of an existing teacher semester, or creates/updates one.