この記事では、SQLiteの基本的な特徴とその利点、Pythonでの操作方法について解説します。具体的なコード例とその詳細な解説、応用例も含めています。
目次
SQLiteとは
SQLiteは、サーバー不要で使用できる組み込み型のSQLデータベースエンジンです。このデータベースは一つのディスクファイルに保存され、簡単な設定で即座に使用できるため、手軽さが売りです。
SQLiteの基本的な特徴
SQLiteの特徴は以下の通りです。
- サーバーが不要
- 高度なSQLサポート
- 小規模なライブラリ
- クロスプラットフォーム
SQLiteの利点
SQLiteは特に以下のような場面で役立ちます。
開発・テストフェーズ
サーバーの設定が不要なため、開発中やテストフェーズでは手軽にデータベース環境を構築できます。
小規模なアプリケーション
サーバー不要でライブラリも小さいため、小規模なアプリケーションに適しています。
PythonでSQLiteを使う方法
PythonでSQLiteを使用するための基本的な手法について解説します。
データベースの作成と接続
Pythonの`sqlite3`モジュールを用いて、SQLiteデータベースを作成・接続する例です。
import sqlite3
# データベースに接続(なければ作成)
conn = sqlite3.connect('example.db')
テーブルの作成
次にテーブルを作成します。
# カーソルオブジェクトを作成
c = conn.cursor()
# テーブルを作成
c.execute('''CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)''')
# 変更をコミット
conn.commit()
テーブルの作成の補足
このコードでは、`users`という名前のテーブルを作成し、`id`と`name`という2つのカラムを定義しています。
応用例
レコードの追加と取得
データ(レコード)を追加して取得する例です。
# レコードを追加
c.execute("INSERT INTO users (name) VALUES ('Alice')")
c.execute("INSERT INTO users (name) VALUES ('Bob')")
conn.commit()
# レコードを取得
c.execute("SELECT * FROM users")
print(c.fetchall())
レコードの追加と取得の補足
このコードでは、`Alice`と`Bob`という名前のレコードを追加しています。その後、`SELECT * FROM users`で全てのレコードを取得しています。
レコードの更新と削除
既存のデータを更新または削除する例です。
# レコードを更新
c.execute("UPDATE users SET name = 'Charlie' WHERE name = 'Alice'")
conn.commit()
# レコードを削除
c.execute("DELETE FROM users WHERE name = 'Bob'")
conn.commit()
レコードの更新と削除の補足
`UPDATE`文と`DELETE`文を使って、レコードの更新と削除を行っています。
まとめ
SQLiteは手軽に使えるデータベースであり、Pythonでの操作も非常に簡単です。開発やテスト、小規模なアプリケーションで非常に便利です。この記事で紹介した基本的な操作方法や応用例を参考に、ぜひSQLiteを活用してください。
コメント