[flutter] 플러터 앱에서 데이터베이스를 사용하는 방법은?

플러터는 Dart 언어로 개발된 모바일 앱을 만들기 위한 프레임워크입니다. 데이터베이스는 대부분의 앱에서 중요한 부분을 차지하며, 플러터 앱에서 데이터베이스를 사용하는 방법에 대해 알아보겠습니다.

1. SQLite 사용

플러터에서 가장 일반적으로 사용되는 데이터베이스는 SQLite입니다. SQLite는 경량형이고 모바일 앱에 적합한 데이터베이스 엔진입니다.

import 'package:sqflite/sqflite.dart';
import 'package:path_provider/path_provider.dart';
import 'package:path/path.dart';

_initDatabase() async {
  var databasesPath = await getDatabasesPath();
  String path = join(databasesPath, 'example.db');
  var database = await openDatabase(path, version: 1,
      onCreate: (Database db, int version) async {
    // Create the database with a table
    await db.execute(
        'CREATE TABLE Test (id INTEGER PRIMARY KEY, name TEXT, value INTEGER, num REAL)');
  });
  return database;
}

2. Firebase 사용

Firebase는 Google에서 제공하는 모바일 및 웹 앱을 위한 플랫폼으로, 실시간 데이터베이스 및 클라우드 Firestore와 같은 데이터베이스 서비스를 제공합니다.

Firebase 데이터베이스를 사용하려면 firebase_corecloud_firestore 패키지를 플러터 앱에 추가하고 Firebase 프로젝트를 설정해야 합니다.

import 'package:firebase_core/firebase_core.dart';
import 'package:cloud_firestore/cloud_firestore.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}
void addData() {
  FirebaseFirestore.instance
      .collection('users')
      .add({'name': 'John Doe', 'age': 30});
}

3. 다른 옵션

플러터 앱에서 데이터베이스를 사용하는 다른 옵션으로는 Moor, Hive, ObjectBox 등의 라이브러리를 활용하는 방법이 있습니다.

마무리

이상으로 플러터 앱에서 데이터베이스를 사용하는 방법에 대해 간략히 살펴보았습니다. 데이터베이스 선택은 앱의 요구 사항 및 개발자의 선호에 따라 다를 수 있습니다. 이러한 도구들을 효과적으로 활용하여 안정적이고 효율적인 데이터베이스 기능을 플러터 앱에 통합할 수 있습니다.

참고 문헌:

언제든지 궁금한 점이 있으시면 질문해주세요!