Загрузка значений SQLite3 в переменные Python - PullRequest
0 голосов
/ 02 июля 2011

У меня есть проект, построенный на Python 2.7, с использованием SQLite3 в качестве базы данных.Мне нужно знать, как загрузить элемент из определенной строки и столбца в существующую переменную Python.

TY!

1 Ответ

3 голосов
/ 02 июля 2011

Вот основные шаги:

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) и узнать, как извлечь результаты в диктовку.Вот пример:

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 заключается в том, что вы можете получить доступ к значениям столбца по имени, а не к менее значимому целому числу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...