目次
(確認環境:Python 3)
selectで一行を取得する(fetchone)
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()
3行目は、SQLiteに接続しています。rはraw文字列です。エスケープシーケンス(\)を無効化して文字列として扱ってくれます。
7行目は、SQLを実行しています。
9行目は、fetch + oneです。
11~14行目は、タプルの値を表示しています。
selectで複数行を取得する(for文)
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()
3行目は、SQLiteに接続しています。rはraw文字列です。エスケープシーケンス(\)を無効化して文字列として扱ってくれます。
7行目は、for文とSQLを実行しています。
取得した行数分ループ処理が実行されます。
selectで複数行を取得する(fetchall)
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文字列です。エスケープシーケンス(\)を無効化して文字列として扱ってくれます。
7行目は、SQLを実行しています。
9行目は、fetch + allです。
11~13行目は、タプルの値を表示しています。
関連の記事
SQLiteのインストールとSQLを実行するサンプル
Python for文 処理を繰り返す(break/continue)
Python リストの仕組みと使い方のサンプル(list)
Python タプルの仕組みと使い方のサンプル(tuple)
