【入門】SQLite の使い方

スポンサーリンク

SQLite とは

SQLite とは、アプリケーションに組み込むデータベースです。

一般的な RDBMS と異なり、サーバーを構築する必要が無いため、ちょっとした検証に便利です。

それなりの規模の本番環境では、おとなしくサーバープロセスとして稼働する RDBMS を使いましょう。

一部のアプリケーションは内部データ保存に SQLite を使えます。
また、SQLite を使ってアプリケーションのプロトタイプを作り、その後そのコードを PostgreSQL や Oracle のような大規模データベースに移植するということも可能です。

https://docs.python.org/ja/3/library/sqlite3.html
スポンサーリンク

Python で SQLite3

Python で SQLite3 を利用してデータベースを操作してみます。

vim sqlite.py
import sqlite3

dbpath = 'test.db' #テーブルを保存するファイル
con = sqlite3.connect(dbpath) #データベースファイルにコネクションを確立
cur = con.cursor() #カーソルインスタンスを作成

cur.execute('CREATE TABLE test(id INTEGER, name STRING)') #テーブル作成
cur.execute('INSERT INTO test values(1,"hoge")') #レコードを挿入

for row in cur.execute('SELECT * FROM test'): #SELECT 文の結果を print
        print(row)

con.commit() #コミット

cur.close() #カーソルをクローズ
con.close() #コネクションをクローズ
python3 sqlite.py
(1, 'hoge')

SQL コマンド「SELECT * FROM test」の結果が取得できていることが確認できます。

ls
sqlite.py  test.db

データベースファイル test.db が作成されていることが確認できます。

スポンサーリンク

コマンドラインツールで SQLite3

コマンドラインツールを利用して SQLite3 を利用します。

データベースファイルには、先程作成した test.db を利用します。

sqlite3 test.db
SELECT * FROM test;
1|hoge

データベースファイル test.db に対して、SQL 文が実行できることが確認できます。

なお、SELECT 文のカラム名を表示するには「.headers ON」コマンドを利用します。

.headers ON
SELECT * FROM test;
id|name
1|hoge
.exit

sqlite3 のコマンド一覧は、「.help」を実行すれば確認できます。

参考資料

sqlite3 --- SQLite データベースに対する DB-API 2.0 インターフェース — Python 3.10.0b2 ドキュメント

コメント