データベースに対する変更の保存と破棄

データベースへに対してテーブルを追加するなどの変更を行った場合、「保存」を行うまで実際には変更内容が保存されていません。保存されていない変更がある状態でデータベースから切断しようとしたりDB Browser for SQLiteを終了させようとした時に確認ダイアログが表示されます。ここでは任意のタイミングで変更内容を保存する方法と変更内容を保存せずに破棄する方法について解説します。

(2022 年 04 月 05 日公開 / 2022 年 04 月 05 日更新)

変更を保存

テスト用のデータベースを作成し、データベースに接続します。そしてテーブルを1つ追加しました。

p3-1

テーブルを追加するなどの変更を行った場合、明示的に変更を保存しなければ保存がされていない状態です。ここでデータベースから切断しようとしたりDB Browserを閉じようとすると次のように変更された内容が保存されていないという警告ダイアログが表示されます。

p3-2

変更を保存するなら「Yes」、変更を破棄するなら「No」、データベースを閉じるのをキャンセルするには「Cancel」をクリックします。この時点で変更内容を保存するかどうかを選択することができるわけです。ここではいったん「Cancel」をクリックして元の画面に戻りました。

任意のタイミングでデータベースに対して行った変更を保存するには「File」メニューの中の「Write Changes」メニューをクリックして下さい。

p3-3

この時点までにデータベースに対して行われた変更が保存されました。一度保存したら保存する前の状態に戻すことはできませんのでご注意下さい。

変更を破棄

データベースに対して行った変更を破棄することもできます。破棄した場合は前回最後に変更を保存した状態まで戻ることになります。

テストを分かりやすくするため、テーブルが1つ追加されている現在の時点で一度保存を行っておきます。

p3-4

新しいテーブルをデータベースに追加します。これで最後にデータベースが保存されてから変更が加えられたことになります。

p3-5

それではデータベースに対する変更を破棄してみます。変更を破棄するには変更を「File」メニューの中の「Revert Changes」メニューをクリックして下さい。

p3-6

変更内容を破棄していいのかどうか確認ダイアログが表示されます。破棄して宜しければ「Yes」ボタンをクリックして下さい。

p3-7

前回保存された時から変更された内容が破棄されて、前回保存された状態にデータベースが戻ります。(今回の場合でいえば追加したテーブルが追加される前に戻ります)。

p3-8

今回はテーブルの追加といった変更でしたが、テーブルに追加したデータなども変更を破棄することで追加する前の状態に戻すことができます。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。