概要 :このチュートリアルでは、SQLitedumpコマンドを使用してデータベースをバックアップおよび復元する方法を学習します。
SQLiteプロジェクトはsqlite3
を提供します コマンドラインプログラムを使用してSQLiteデータベースと対話できるツール。
sqlite3
を使用する ツールを使用すると、SQLステートメントを使用してデータベース内のデータをクエリまたは更新できます。また、ドットコマンドと呼ばれる特別なコマンドを使用して、さまざまな便利なデータベース操作を実行できます。
これらのドットコマンドの1つは、.dump
です。 データベース全体またはテーブル全体をテキストファイルにダンプする機能を提供するコマンド。
SQLiteダンプコマンドを使用してデータベース全体をファイルにダンプします
次のコマンドは、chinook.db
への新しいSQLiteデータベース接続を開きます ファイル。
C:\sqlite>sqlite3 c:/sqlite/chinook.db
SQLite version 3.13.0 2016-05-18 10:57:30
Enter ".help" for usage hints.
sqlite>
Code language: JavaScript (javascript)
データベースをファイルにダンプするには、.dump
を使用します 指図。 .dump
コマンドは、SQLiteデータベースの構造全体とデータを単一のテキストファイルに変換します。
デフォルトでは、.dump
コマンドは、SQLステートメントを画面に出力します。ファイルに出力を発行するには、.output FILENAME
を使用します コマンド。
次のコマンドは、ダンプファイルの出力をchinook.sql
に指定します。 chinookデータベースをchinook.sql
にダンプします ファイル。
sqlite> .output c:/sqlite/chinook.sql
sqlite> .dump
sqlite> .exit
Code language: JavaScript (javascript)
SQLiteダンプコマンドを使用して特定のテーブルをダンプします
特定のテーブルをダンプするには、.dump
の後にテーブル名を指定します 指図。たとえば、次のコマンドはalbums
を保存します albums.sql
へのテーブル ファイル。
sqlite> .output c:/sqlite/albums.sql
sqlite> .dump albums
sqlite> .quit
Code language: JavaScript (javascript)
次の図は、albums.sql
の内容を示しています。 ファイル。
スキーマコマンドのみを使用してテーブル構造をダンプする
テーブル構造をデータベースにダンプするには、.schema
を使用します コマンド。
次のコマンドは、出力ファイルをchinook_structure.sql
に設定します ファイルを作成し、テーブル構造をchinook_structure.sql
に保存します ファイル:
sqlite> .output c:/sqlite/chinook_structure.sql
sqlite> .schema
sqlite> .quit
Code language: JavaScript (javascript)
次の図は、chinook_structure.sql
の内容を示しています。 ファイル。
1つ以上のテーブルのデータをファイルにダンプする
テーブルのデータをテキストファイルにダンプするには、次の手順を使用します。
まず、モードをinsert
に設定します .mode
を使用する 次のようにコマンドを実行します:
sqlite> .mode insert
Code language: CSS (css)
今後、すべてのSELECTステートメントは、純粋なテキストデータではなくINSERTステートメントとして結果を発行します。
次に、出力をデフォルトの標準出力ではなくテキストファイルに設定します。次のコマンドは、出力ファイルをdata.sql
に設定します。 ファイル。
sqlite> .output data.sql
Code language: CSS (css)
3番目に、SELECTステートメントを発行して、ダンプするテーブルからデータを照会します。次のコマンドは、artists
からデータを返します テーブル。
sqlite> select * from artists;
Code language: SQL (Structured Query Language) (sql)
data.sql
の内容を確認してください ファイル、すべてが正常であれば、次の出力が表示されます:
他のテーブルからデータをダンプするには、SELECT
を発行する必要があります それらのテーブルからデータをクエリするステートメント。
このチュートリアルでは、SQLitedumpコマンドやその他のコマンドを使用してデータをテキストファイルにダンプする方法を学習しました。