1.4.14 Example Code

##
1.4.14 Example Code

Below is a script to test the database layer. It demonstrates the use of some of the commands:

    #!/usr/bin/env python

    import sys; sys.path.append('../../../') # show python where the modules are

    import web.database
    connection = web.database.connect(
        adapter="snakesql",
        database="database",
        autoCreate = 1,
    )
    cursor = connection.cursor()

    import datetime

    # Crete a table using the DB-API 2.0 interface and inset some information
    cursor.execute('CREATE TABLE test( columnDate Date,  columnString String)')
    cursor.execute(
        "INSERT INTO test ( columnDate, columnString) VALUES (?, 'This i\\s a str''ing with some awkward quoting')",
        datetime.date(2005,01,27)
    )
    # Retrieve the information
    cursor.execute("SELECT * from test WHERE columnDate = '2005-01-27'")
    print cursor.fetchall(format='dict')

    # Update the row using the abstraction interface and retrieve the information
    cursor.update(
        table = 'test',
        columns = ['columnString'],
        values = ["James's New String conta\\\\ining an apostrophe and awkward quoting"],
    )
    print cursor.select(columns='*', tables=['test'])

    connection.close() # Close the connection without saving changes