Python SQLiteへ接続してselectするサンプル

PythonのSQLiteへ接続してselectするサンプルです。
(確認環境:Python 3.7.2)

目次

サンプル selectで一行を取得する(fetchone)
  selectで複数行を取得する(for文)
selectで複数行を取得する(fetchall)

selectで一行を取得する(fetchone)

selectで一行を取得するサンプルです。

# coding: utf-8
import sqlite3

conn = sqlite3.connect(r'E:\dev\sqlite-test\test1.db')

c = conn.cursor()

c.execute("select * from employee")

list1 = c.fetchone()

print (list1) #(1, '鈴木', 'suzuki')
print (list1[0]) # 1
print (list1[1]) # 鈴木'
print (list1[2]) # suzuki

conn.close() 

4行目は、SQLiteに接続しています。rはraw文字列です。エスケープシーケンス(\)を無効化して文字列として扱ってくれます。
8行目は、SQLを実行しています。
10行目は、fetch + oneです。
12~15行目は、タプルの値を表示しています。

 

selectで複数行を取得する(for文)

selectで複数行を取得するサンプルです。

# coding: utf-8
import sqlite3

conn = sqlite3.connect(r'E:\dev\sqlite-test\test1.db')

c = conn.cursor()

for a in c.execute("select * from employee"):
	print(a) #(1,'鈴木','suzuki')(2,'田中','tanaka')(3,'竹田','takeda')

conn.close()

4行目は、SQLiteに接続しています。rはraw文字列です。エスケープシーケンス(\)を無効化して文字列として扱ってくれます。
8行目は、for文とSQLを実行しています。
取得した行数分ループ処理が実行されます。

 

selectで複数行を取得する(fetchall)

selectで複数行を取得するサンプルです。

# coding: utf-8
import sqlite3

conn = sqlite3.connect(r'E:\dev\sqlite-test\test1.db')

c = conn.cursor()

c.execute("select * from employee")

list1 = c.fetchall()

print (list1[0]) #(1, '鈴木', 'suzuki')
print (list1[1]) #(2, '田中', 'tanaka')
print (list1[2]) #(3, '竹田', 'takeda')

conn.close() 

3行目は、SQLiteに接続しています。rはraw文字列です。エスケープシーケンス(\)を無効化して文字列として扱ってくれます。
8行目は、SQLを実行しています。
10行目は、fetch + allです。
12~14行目は、タプルの値を表示しています。

以下はPython公式ドキュメントのsqlite3のリンクです。 
https://docs.python.org/ja/3/library/sqlite3.html

関連の記事

SQLiteのインストールとSQLを実行するサンプル
Python for文 処理を繰り返す(break/continue)
Python リストの仕組みと使い方のサンプル(list)
Python タプルの仕組みと使い方のサンプル(tuple)

△上に戻る