この記事ではPythonでSQLiteデータベースを作成する方法を詳細に解説します。基本的なデータベースの作成からテーブルの操作、さらには応用例まで、具体的なコード例とその解説を交えて紹介します。
目次
PythonとSQLiteの組み合わせの利点
PythonとSQLiteを組み合わせて使用することにはいくつかの利点があります。まず、SQLiteはサーバーが不要で、軽量ながら高性能なデータベースエンジンです。これにより、小規模から中規模のプロジェクトで非常に効率的にデータを管理できます。また、Pythonの`sqlite3`ライブラリを使用することで、簡単にデータベース操作が可能です。
基本的なデータベースの作成
必要なライブラリのインポート
PythonでSQLiteを使うためには、`sqlite3`という標準ライブラリをインポートする必要があります。
import sqlite3
データベースファイルの作成
以下のコードを実行すると、`example.db`という名前のSQLiteデータベースファイルが作成されます。
# データベースファイルへの接続(存在しない場合は新規作成)
conn = sqlite3.connect('example.db')
テーブルの作成と操作
テーブルの作成
データベースが作成できたら、テーブルを作成します。以下は`users`という名前のテーブルを作成する例です。
# カーソルオブジェクトを作成
cursor = conn.cursor()
# SQLコマンドを実行してテーブルを作成
cursor.execute('''
CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)
''')
# 変更をコミット
conn.commit()
テーブルにデータを挿入
作成した`users`テーブルにデータを挿入します。
# データを挿入
cursor.execute("INSERT INTO users (name, age) VALUES ('Alice', 30)")
cursor.execute("INSERT INTO users (name, age) VALUES ('Bob', 40)")
# 変更をコミット
conn.commit()
応用例
一括でデータを挿入する
複数のデータを一括で挿入する方法です。
# 複数のデータを一括で挿入
users_data = [('Charlie', 50), ('Dave', 60)]
cursor.executemany("INSERT INTO users (name, age) VALUES (?, ?)", users_data)
# 変更をコミット
conn.commit()
データのフィルタリングと取得
特定の条件に合致するデータをフィルタリングして取得する方法です。
# 40歳以上のユーザーを取得
cursor.execute("SELECT * FROM users WHERE age >= 40")
result = cursor.fetchall()
for row in result:
print(row)
まとめ
PythonでSQLiteデータベースを簡単に作成し、操作する方法について説明しました。これを機に、データ管理にSQLiteを活用してみてはいかがでしょうか。
コメント