データ保存のレシピ

SQLite の CRUD、プリペアドステートメント、マイグレーション、Store プラグインによる設定保存、Stronghold による暗号化保存、LocalStorage / IndexedDB の扱い、CSV の読み書きなど、データの永続化に関するレシピです。

全 7 件 / 対象: Tauri 2.x

  1. 1 SQLite データベース操作 (CRUD) SQL プラグインを導入し(sqlite 機能と権限 sql:allow-execute)、execute() と select() で追加・参照・更新・削除する。真偽値や数値の渡し方と、トランザクションを Rust で組む理由も示す。 更新日: 2026-09-12
  2. 2 プリペアドステートメントで安全にSQLを実行する SQL プラグインの execute / select にプレースホルダーと値の配列を渡し、SQL インジェクションを防ぐ。DB ごとの記法、一括挿入、Rust の sqlx での書き方も示す。 更新日: 2026-09-12
  3. 3 データベースのマイグレーション(版管理)を行う SQL プラグインの Migration と add_migrations() でテーブル定義を版ごとに管理する。版の上げ方、適用済みの SQL を書き換えてはいけない理由、失敗したときの DB の状態と扱い方を示す。 更新日: 2026-09-12
  4. 4 Store プラグインで設定を保存する(キーバリューストア) Store プラグインの LazyStore / load() と get()・set() で設定を JSON に保存する。自動保存の間隔、既定値、ウィンドウ間や Rust との共有、壊れたファイルが黙って初期化される落とし穴も示す。 更新日: 2026-09-12
  5. 5 暗号化ストレージ (Stronghold) の導入と利用 Stronghold プラグインで API トークンを暗号化ファイルに保存・読み出す。with_argon2() でパスワードから鍵を作る仕組み、save() 忘れで消える落とし穴、Store や OS の資格情報との使い分けも示す。 更新日: 2026-09-12
  6. 6 LocalStorage / IndexedDB を Tauri アプリで使う プラグインなしで使える localStorage と IndexedDB の使い分け、保存場所、消えるリスクと容量、Store や SQL プラグインへ移る判断基準をまとめる。 更新日: 2026-09-11
  7. 7 CSV ファイルの読み書き (Rust) csv クレートと serde で CSV を構造体で読み書きする。Excel で文字化けしない BOM 付き UTF-8 の書き出し、Shift_JIS の検出、大きなファイルを 1 行ずつ処理し Channel で進捗を返す方法も示す。 更新日: 2026-09-12