我有一个用Python 2.7构建的项目,使用SQLite3作为数据库。我需要知道如何将特定行和列中的项加载到现有的Python变量中。
TY!
答案 0 :(得分:3)
以下是基本步骤:
import sqlite3
conn = sqlite3.connect(':memory:')
curs = conn.cursor()
results = curs.execute( """SELECT mycol
FROM mytable
WHERE somecol = ?;""", (some_var,) ).fetchall()
curs.close()
conn.close()
对于进一步的研究,您可以研究使用上下文管理器(with
语句),以及如何将结果提取到dict中。这是一个例子:
with sqlite3.connect(':memory:') as conn:
curs = conn.cursor()
curs.row_factory = sqlite3.Row
try:
results = curs.execute( """SELECT mycol
FROM mytable
WHERE somecol = ?;""",
(some_var,) ).fetchall()
# you would put your exception-handling code here
finally:
curs.close()
上下文管理器的好处很多,包括您的连接已关闭。在dict中映射结果的好处是,您可以按名称访问列值,而不是意义较小的整数。