Python и база данных sqlite

python-sqlite.jpg Для работы с SQLite в python понадобится библиотека pysqlite, скачиваем установочный пакет в зависимости от установленного python, устанавливаем.

Дальше проверяем корректность установки и доступность:

from pysqlite2 import test
test.test()

Если результат будет примерно похожим на : Ran 101 tests in 0.182s то все гуд.

Ниже приведен пример, в котором мы создаем базу данных, вставляем данные и делаем выборку.

from pysqlite2 import dbapi2 as sqlite

con = sqlite.connect('users.db')
cur = con.cursor()
cur.execute('CREATE TABLE users (id INTEGER PRIMARY KEY, firstName VARCHAR(100), secondName VARCHAR(30))')
con.commit()
cur.execute('INSERT INTO users (id, firstName, secondName) VALUES(NULL, "Guido", "van Rossum")')
con.commit()
print cur.lastrowid

cur.execute('SELECT * FROM users')
print cur.fetchall()

Порядок работы:

  1. Создание соединения с базой данных. Если БД не существует то она будет создана, иначе файл будет открыт.
  2. Создание объекта курсора для взаимодействия с БД.
  3. Вставка кортежа со значениями, в зависимости от пользовательского вода
cursor.execute('INSERT INTO users VALUES (null, ?, ?)', (firstName, secondName))
connection.commit()
  1. Выборка данных
cursor.execute('SELECT * FROM names')
print cursor.fetchall()

cursor.execute('SELECT * FROM names')
for row in cursor:
print '-'*10
print 'ID:', row[0]
print 'First name:', row[1]
print 'Second name:', row[2]
print '-'*10

Есть возможность выбрать заданное количество строк, передав желаемое значение в курсор:

cursor.execute('SELECT * FROM names')
print cursor.fetchmany(2)

Дополнительное чтиво:

Теги: Python, sqlite

blog comments powered by Disqus