SQLiteは、インストールと管理の必要性を排除するクライアントサーバーデータベースモデルを提供していません。これはメモリ内で実行されるため、サーバーなしでデータベースを実行できます。 SQLiteは、データベースやSQLiteエンジンと対話するために使用できるインタラクティブなシェルを提供します。
このチュートリアルでは、SQLiteシェルを使用してデータベースを作成し、テーブルを作成し、データを挿入する方法について説明します。
SQLiteシェルの入手
Linuxシステム用のSQLiteを入手するには、ブラウザを開いて次の場所に移動します。
https://www.sqlite.org/download.html
システムに適したSQLiteツールを選択してダウンロードします。アーカイブを解凍すると、sqlite3バイナリが作成されます。 SQLiteシェルを起動するには、sqlite3バイナリを実行します。
パッケージマネージャーを使用してSQLiteをインストールすることもできます。 aptを使用してインストールするには、次のコマンドを使用します。
sudo apt-get update
sudo apt-get installsqlite3
SQLiteシェル
SQLiteシェルは、データベースに対して生のSQLクエリを実行したり、データベースファイルとしてアーカイブを圧縮したりできるシンプルなコマンドラインツールです。
次のコマンドでシェルを起動します。
#sqlite3SQLiteバージョン3.27.22019年-02-25 16:06:06
入力'。ヘルプ' にとって使用上のヒント。
一時的なインメモリデータベースに接続されています。
使用する'.open FILENAME'永続データベースで再度開きます。
sqlite>>
SQLiteシェルに入ったら、コマンドの実行を開始できます。 .helpコマンドを入力して、シェルコマンドのヘルプを表示します。
sqlite>>。ヘルプ.archive ... SQLアーカイブを管理する
.auth ON|OFF承認者のコールバックを表示する
.backup?DB?ファイルバックアップDB((ディフォルト'主要')。ファイルへ
。保釈|offエラーが発生したら停止します。デフォルトオフ
.binary on|offバイナリ出力をオンまたはオフにします。デフォルトオフ
.cdDIRECTORY作業ディレクトリをDIRECTORYに変更します
。の変更|offSQLによって変更された行数を表示する
.checkGLOB失敗もしも.testcaseが一致しないため出力
.cloneNEWDB既存のデータベースからNEWDBにデータをクローンします
.databases接続されているデータベースの名前とファイルを一覧表示します
.dbconfig?op? ?val? sqlite3_db_configを一覧表示または変更します(()。オプション
.dbinfo?DB?データベースに関するステータス情報を表示する
.dump?TABLE? ...すべてのデータベースコンテンツをレンダリングするなのでSQL
.echo on|オフにする指図 捨てたオンまたはオフ
.eqp on|オフ|満杯|...自動EXPLAINQUERYPLANを有効または無効にします
-------------------------------------------------- --------------------
.helpコマンドは、データベースに対して実行できるSQLクエリを表示しないことに注意してください。ドットコマンドは、シェルを直接構成または操作する1行のコマンドです。
SQLiteシェル内ですべてのデータベースのリストを取得するには、.databasesコマンドを使用します。
sqlite>>.databases main:SQLiteシェルを試して、それを構成して操作する方法を学ぶことをお勧めします。詳細なガイドが必要な場合は、SQLiteのドキュメントを検討してください。
SQLiteデータベースを作成する方法
SQLiteデータベースを作成するには、sqlite3コマンドを呼び出してから、作成するデータベースの名前を呼び出すだけです。指定されたデータベースが存在する場合、SQLiteはシェル内でデータベースを開くことに注意してください。
データベースを作成するための一般的な構文は次のとおりです。
sqlite3 dbName.dbたとえば、データベースmovies.dbを作成するには、次のコマンドを使用します。
sqlite3movies.dbSQLiteバージョン3.27.22019年-02-25 16:06:06入力'。ヘルプ' にとって使用上のヒント。
sqlite>>
このコマンドを実行すると、データベースが存在しない場合はデータベースが作成され、データベースが存在する場合はデータベースが開きます。データベースを表示するには、.databasesコマンドを次のように使用します。
sqlite>>.databases main:/家/debian/movies.dbデータベースの添付
SQLiteを使用すると、データベースを接続して、その下で特定の機能を実行できます。 ATTACH DATABASEクエリを使用して、データベースを次のようにアタッチできます。
sqlite>>データベースを添付する'movies.db' なので 'u movies.db';sqlite>>.databases
主要:/家/debian/movies.db
u movies.db:/家/debian/movies.db
asステートメントは、データベースを接続するためのエイリアス名を設定します。アタッチされたデータベースが存在しない場合、SQLiteはそれを自動的に作成することに注意してください。
データベースをデタッチするには、DETACHDATABASEクエリを使用します。例えば:
DETACH DATABASE u movies.db;ノート: このチュートリアルで使用されている一部のデータベース名は、デモンストレーションのみを目的としており、受け入れられている命名規則が含まれていない場合があります。
SQLite Create Table
SQLiteデータベースにテーブルを作成するには、クエリCREATETABLEに続けてテーブル名を使用します。一般的な構文は次のとおりです。
CREATE TABLE db_name.tb_name((column_nameデータ型PRIMARYKEY((桁((NS)。)。、
column_name2データ型、
..。
column_nameNデータ型
)。;
たとえば、データベースプログラミングを作成し、関連情報を次のように使用して言語のテーブルを作成しましょう。
sqlite3 Programming.db sqlite>>CREATETABLE言語((..。>> idINTEGER PRIMARY KEY AUTOINCREMENT、
..。>>名前TEXTNOT NULL、
..。>>クリエイターテキスト、
..。>>年INTEGERNOT NULL、
..。>>バージョンTEXT..。>> )。;
テーブルが正常に作成されたことを確認するには、.tables SQLiteコマンドを使用して、データベース内のすべてのテーブルを一覧表示します。
sqlite>>.tables言語テーブルの詳細を取得するには、コマンド.schemaに続けてテーブル名を使用します。
sqlite>>.schema言語CREATETABLE言語((idINTEGER PRIMARY KEY AUTOINCREMENT、
名前TEXTNOT NULL、
クリエイターテキスト、
年INTEGERNOT NULL、
バージョンテキスト
)。;
SQLite挿入データ
データの新しい行をテーブルに挿入するには、INSERTINTOクエリを使用します。このステートメントの一般的な構文は次のとおりです。
TABLE_NAME値に挿入((VAR1、VAR2、VAR3、…VARN)。;たとえば、上記で作成した言語テーブルにデータを追加するには、以下のクエリを使用します。
sqlite>>言語に挿入..。>>値((1、「Python」、グイドヴァンロッサム、1991、「0.9.1」)。;
データベーステーブルに情報を入力し続けます。
sqlite>>言語に挿入..。>>値((2、「JavaScript」、「ブレンダン・アイク」、19 95、「ECMA1」)。;
データが正常に作成されたことを確認するには、SELECTクエリを使用できます。
sqlite>>選択する*FROM言語;1 |Python|グイドヴァンロッサム| 1991 |0.9.12 |JavaScript|ブレンダン・アイク| 19 95 |ECMA1
SQLiteデータの削除
テーブル内のデータを削除するには、DELETEクエリに続いてWHEREと条件を使用できます。一般的な構文は次のとおりです。
DELETE FROM tb_name WHERE{{調子};たとえば、idが1に等しいデータを削除するには、クエリを使用できます。
sqlite>>言語から削除WHEREid=1;データが正常に削除されたことを確認するには、上記のようにSELECTクエリを使用できます。
sqlite>>選択する*FROM言語;2 |JavaScript|ブレンダン・アイク| 19 95 |ECMA1
これにより、id = 1の行(この場合はPythonエントリ)が削除されます。
結論
このチュートリアルでは、SQLiteをセットアップして実行する方法について説明しました。また、SQLiteシェルを操作し、SQLステートメントとしてコマンドを実行する方法についても説明しました。このチュートリアルで学んだことを使用して、データベースの作成、テーブルの作成、データの追加、および行の削除を行うことができます。