Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
The code below does the same as the example snippet you've just seen: opening a database connection, creating a new table with some columns, storing some data, altering the table schema and adding another row.
import sqlite3
# open connection and get a cursor
conn = sqlite3.connect(':memory:')
c = conn.cursor()
# create schema for a new table
c.execute('CREATE TABLE IF NOT EXISTS sometable (name, age INTEGER)')
# insert a new row
c.execute('INSERT INTO sometable values (?, ?) ', ('John Doe', 37))
# extend schema during runtime
c.execute('ALTER TABLE sometable ADD COLUMN gender TEXT')
# add another row
c.execute('INSERT INTO sometable values (?, ?, ?) ', ('Jane Doe', 34, 'female'))
# get a single row
c.execute('SELECT name, age FROM sometable WHERE name = ?', ('John Doe', ))
row = list(c)[0]
john = dict(name=row[0], age=row[1])

This comment has been minimized.

Copy link

@bivald bivald commented May 21, 2015

And just to cross-link to those coming from google, this gist is linked to from

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.