Pythonのsqlite3における.Rowを使ってカラム名による取得方法
Pythonのsqlite3ライブラリを使用して、SQLiteデータベースのクエリ結果をカラム名を使って取得するには、.Rowファクトリを使用する方法があります。.Rowファクトリは、カラム名をキーとする辞書のようなオブジェクトを生成し、クエリ結果の各行をこれでラップします。
以下は、.Rowファクトリを使ってカラム名による取得の例です:
python
import sqlite3
# データベースに接続
conn = sqlite3.connect('mydatabase.db')
# カーソルを作成し、Rowファクトリを設定
conn.row_factory = sqlite3.Row
cursor = conn.cursor()
# SELECTクエリを実行
cursor.execute("SELECT * FROM mytable")
# クエリ結果を取得
rows = cursor.fetchall()
# クエリ結果の各行を処理
for row in rows:
# カラム名を指定してデータにアクセス
id = row['id']
name = row['name']
age = row['age']
print(f"ID: {id}, Name: {name}, Age: {age}")
# 接続を閉じる
conn.close()
この例では、以下の手順を実行しています:
-
データベースに接続し、カーソルを作成します。
-
.row_factory属性をsqlite3.Rowに設定して、クエリ結果の各行を.Rowオブジェクトで取得します。 -
SELECTクエリを実行し、クエリ結果を取得します。
-
クエリ結果の各行を処理するためのループを設定し、カラム名を指定してデータにアクセスします。行オブジェクトは辞書のように振る舞い、カラム名をキーとして各値にアクセスできます。
これにより、クエリ結果のデータをカラム名を使って取得できます。

ディスカッション
コメント一覧
まだ、コメントがありません