123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- import 'package:flutter/cupertino.dart';
- import 'package:flutter_habit/database/entity/BasicInfo.dart';
- import 'package:flutter_habit/database/entity/ExerciseInfo.dart';
- import 'package:flutter_habit/database/entity/FoodInfo.dart';
- import 'package:flutter_habit/database/entity/LifeInfo.dart';
- import 'package:flutter_habit/database/entity/ScheduledExercise.dart';
- import 'package:flutter_habit/database/entity/SportInfo.dart';
- import 'package:flutter_habit/database/entity/StudyInfo.dart';
- import 'package:sqflite/sqflite.dart';
- class SqfliteDataBase {
- static final String dbPath = "repository.db.sql";
- static Database? _database;
- static Future<void> init() async {
- if (_database == null || !_database!.isOpen) {
- String databasesPath = "${await getDatabasesPath()}/$dbPath";
- _database = await openDatabase(databasesPath, version: 1);
- await _createTablesIfExists();
- debugPrint("init SqfliteDataBase");
- }
- }
- static Database? getInstance() {
- return _database;
- }
- static Future<void> _createTablesIfExists() async {
- await BasicInfo.create();
- await LifeInfo.create();
- await FoodInfo.create();
- await ExerciseInfo.create();
- await SportInfo.create();
- await StudyInfo.create();
- await ScheduledExercise.create();
- }
- static Future<void> resetTables() async {
- await BasicInfo.recreate();
- await LifeInfo.recreate();
- await FoodInfo.recreate();
- await ExerciseInfo.recreate();
- await SportInfo.recreate();
- await StudyInfo.recreate();
- await ScheduledExercise.recreate();
- }
- }
|