Roshan Book

My Tech Notebook

Python tutorial 16–CRUD application


import sqlite3

def insert(db, row):
    db.execute(‘insert into test (t1, i1) values (?, ?)’, (row[‘t1’], row[‘i1’]))
    db.commit()

def retrieve(db, t1):
    cursor = db.execute(‘select * from test where t1 = ?’, (t1,))
    return cursor.fetchone()

def update(db, row):
    db.execute(‘update test set i1 = ? where t1 = ?’, (row[‘i1’], row[‘t1’]))
    db.commit()

def delete(db, t1):
    db.execute(‘delete from test where t1 = ?’, (t1,))
    db.commit()

def disp_rows(db):
    cursor = db.execute(‘select * from test order by t1’)
    for row in cursor:
        print(‘  {}: {}’.format(row[‘t1’], row[‘i1’]))

def main():
    db = sqlite3.connect(‘test.db’)
    db.row_factory = sqlite3.Row
    print(‘Create table test’)
    db.execute(‘drop table if exists test’)
    db.execute(‘create table test ( t1 text, i1 int )’)

    print(‘Create rows’)
    insert(db, dict(t1 = ‘one’, i1 = 1))
    insert(db, dict(t1 = ‘two’, i1 = 2))
    insert(db, dict(t1 = ‘three’, i1 = 3))
    insert(db, dict(t1 = ‘four’, i1 = 4))
    disp_rows(db)

    print(‘Retrieve rows’)
    print(dict(retrieve(db, ‘one’)), dict(retrieve(db, ‘two’)))

    print(‘Update rows’)
    update(db, dict(t1 = ‘one’, i1 = 101))
    update(db, dict(t1 = ‘three’, i1 = 103))
    disp_rows(db)

    print(‘Delete rows’)
    delete(db, ‘one’)
    delete(db, ‘three’)
    disp_rows(db)

if __name__ == “__main__”: main()

3 responses to “Python tutorial 16–CRUD application

  1. ftndwkuyqrj November 3, 2011 at 10:55 am

    NoMZl7 gxyqucukzkeo, [url=http://mrwfnbqvaagv.com/]mrwfnbqvaagv[/url], [link=http://rwfyrrsfydbs.com/]rwfyrrsfydbs[/link], http://aesnfwgxtgrr.com/

  2. louis vuitton purse December 5, 2011 at 6:31 pm

    Hello! Thanks for the superb info. I will be back to see another post!

  3. moncler vest December 14, 2011 at 9:57 am

    Man, examine a wonderful post! I?ve came across your web site more than once in the past, even so usually forgot to bookmark it.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: