概要 :このチュートリアルでは、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> .exitCode language: JavaScript (javascript) SQLiteダンプコマンドを使用して特定のテーブルをダンプします
特定のテーブルをダンプするには、.dumpの後にテーブル名を指定します 指図。たとえば、次のコマンドはalbumsを保存します albums.sqlへのテーブル ファイル。
sqlite> .output c:/sqlite/albums.sql
sqlite> .dump albums
sqlite> .quitCode language: JavaScript (javascript)
次の図は、albums.sqlの内容を示しています。 ファイル。
スキーマコマンドのみを使用してテーブル構造をダンプする
テーブル構造をデータベースにダンプするには、.schemaを使用します コマンド。
次のコマンドは、出力ファイルをchinook_structure.sqlに設定します ファイルを作成し、テーブル構造をchinook_structure.sqlに保存します ファイル:
sqlite> .output c:/sqlite/chinook_structure.sql
sqlite> .schema
sqlite> .quitCode language: JavaScript (javascript)
次の図は、chinook_structure.sqlの内容を示しています。 ファイル。
1つ以上のテーブルのデータをファイルにダンプする
テーブルのデータをテキストファイルにダンプするには、次の手順を使用します。
まず、モードをinsertに設定します .modeを使用する 次のようにコマンドを実行します:
sqlite> .mode insertCode language: CSS (css) 今後、すべてのSELECTステートメントは、純粋なテキストデータではなくINSERTステートメントとして結果を発行します。
次に、出力をデフォルトの標準出力ではなくテキストファイルに設定します。次のコマンドは、出力ファイルをdata.sqlに設定します。 ファイル。
sqlite> .output data.sqlCode language: CSS (css)
3番目に、SELECTステートメントを発行して、ダンプするテーブルからデータを照会します。次のコマンドは、artistsからデータを返します テーブル。
sqlite> select * from artists;Code language: SQL (Structured Query Language) (sql)
data.sqlの内容を確認してください ファイル、すべてが正常であれば、次の出力が表示されます:
他のテーブルからデータをダンプするには、SELECTを発行する必要があります それらのテーブルからデータをクエリするステートメント。
このチュートリアルでは、SQLitedumpコマンドやその他のコマンドを使用してデータをテキストファイルにダンプする方法を学習しました。