パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v0.3.0

sqflite_migration

sqflite プラグインを使用して SQLite DB のマイグレーションを有効にするためのライブラリ。

AndroidiOSmacOS
30日間ダウンロード
2520
いいね数
23
Pub ポイント
155

パッケージをインストール

flutter pub add sqflite_migration

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

sqflite_migration は、sqflite プラグインを使用して SQLite のデータベースのマイグレーションを容易にする Flutter パッケージです。時間の経過とともにスキーマの変更を管理するための構造的なアプローチを提供し、アプリのアップデート中にデータの整合性を保証します。このライブラリは、データベースのバージョンが変更されたときに自動的に実行されるマイグレーションスクリプトを定義できるようにし、ローカルデータベースのバージョン管理を簡素化します。sqflite とシームレスに統合され、Android、iOS、macOS プラットフォームをサポートしています。

用途

  • ローカルのSQLiteデータベースにおけるスキーマ変更の管理
  • アプリの更新中にデータベースのアップグレードを自動化する
  • アプリバージョン間での下位互換性を確保する
  • マイグレーション中の複雑なデータ変換の処理
  • 複数ステップのマイグレーションワークフローをサポート

主な機能

  • バージョン付きマイグレーションスクリプト
  • データベースを開いたときに自動的にマイグレーションを実行
  • マイグレーション手順を定義するためのシンプルな API
  • sqflite プラグインとの互換性
  • クロスプラットフォーム対応(Android、iOS、macOS)

適している対象

  • 永続的なローカルデータストレージを必要とするアプリ
  • 進化するデータベーススキーマを持つプロジェクト
  • 開発者がデータベースのバージョン管理を手動で行う
  • 信頼できる移行パターンを必要とするチーム
  • オフライン優先アーキテクチャを備えたFlutterアプリ

注意事項

  • 移行ファイルの手動設定が必要です
  • sqflite プラグインに依存
  • 移行ロジックは同一性を保たなければならない
  • 組み込みのロールバックメカニズムなし
  • 基本的なログ記録を超える限られたエラー処理

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

Build Status codecov

Migrate your mobile sqlite database

Library to manage sqlite db migrations using sqflite plugin.

Getting Started

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

final initialScript = [
  '''
create table _todo_list (
  id integer primary key autoincrement,
  alias text not null
  )
''',
  '''
create table _task (
  id integer primary key autoincrement,
  description text,
  todo_list_id integer not null,
  CONSTRAINT fk_todo_lists
    FOREIGN KEY (todo_list_id)
    REFERENCES _todo_list(id)
);
'''
];

final migrations = [
  '''
  alter table _task add column done integer default 0;
  '''
];

final config = MigrationConfig(initializationScript: initialScript, migrationScripts: migrations);

Future<Database> open() async {
 final databasesPath = await getDatabasesPath();
 final path = join(databasesPath, 'test.db');
 
 return await openDatabaseWithMigration(path, config);
}

カテゴリー

依存関係

依存関係一覧 1 件

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。