안녕하세요 IT박사 Ho입니다.

오늘은 flutter에서 DB를 생성하는 방법에 대해서 알아보겠습니다.

방법은 간단합니다. 



1. 테이블 만들기

-extends Table 을 상속받는 클래스를만듭니다.

-아래의 드리프트 패키지를 불러옵니다.

-import 'package:drift/drift.dart';

IntColumn get id => integer()(),  <<이런 방식으로 Column 을 생성해줍니다.


그리고 새로운 스크립트를 만들어 줍니다.


part 'drift_database.g.dart';// part는 아직 만들어지지는 않았지만 앞으로 만들 dart파일을 적어놓으면 됩니다.


@DriftDatabase(

  tables: [

    테이블이름, // 불러줄 테이블 이름을 적어 넣는다.

    

  ],

)


class LocalDatabase extends _$LocalDatabase {

  LocalDatabase() : super(_Connection());

// 아래는 모바일에 약속된 경로에 db.sqlite 파일을 생성하는 함수입니다.

LazyDatabase _Connection() {

  return LazyDatabase(() async {

    final dbFolder = await getApplicationDocumentsDirectory();

    final file = File(p.join(dbFolder.path, 'db.sqlite'));

    return NativeDatabase(file);

  });

}


이렇게 작성해주시면 끝~!