Skip to content

Instantly share code, notes, and snippets.

@liquidgenius
Forked from gka/sqlite3-example.py
Created August 7, 2018 00:15
Show Gist options
  • Save liquidgenius/9c808a5f5b1d4a9326170c2ecb62df86 to your computer and use it in GitHub Desktop.
Save liquidgenius/9c808a5f5b1d4a9326170c2ecb62df86 to your computer and use it in GitHub Desktop.
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)')
conn.commit()
# insert a new row
c.execute('INSERT INTO sometable values (?, ?) ', ('John Doe', 37))
conn.commit()
# extend schema during runtime
c.execute('ALTER TABLE sometable ADD COLUMN gender TEXT')
conn.commit()
# add another row
c.execute('INSERT INTO sometable values (?, ?, ?) ', ('Jane Doe', 34, 'female'))
conn.commit()
# 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])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment