How do I use prepared statements for inserting MULTIPLE records in SQlite using Python / Django? How do I use prepared statements for inserting MULTIPLE records in SQlite using Python / Django? django django

How do I use prepared statements for inserting MULTIPLE records in SQlite using Python / Django?


http://docs.python.org/library/sqlite3.html#cursor-objects

Python's SQLite libraries don't have prepared statement objects, but they do allow you to use parameterized queries, and to provide more than one set of parameters.

Edit: An example of executemany as requested:

values_to_insert = [(1,"foo"), (2, "bar"), (3, "baz")]cursor.executemany("""    INSERT INTO some_table ('item_num', 'item_name')    VALUES (?, ?)""", values_to_insert)


You can use executemany() and pass an iterator object, e.g. to insert 100 integers and their squares:

def my_iter(x):    for i in range(x):        yield i, i*icursor.executemany("INSERT INTO my_table VALUES (?, ?)", my_iter(100))


If you are trying to insert just one row as with a PreparedStatement,

cursor.execute("""INSERT INTO table_name ('column1', 'column2') VALUES (?, ?)""", ("value1", "value2"))

should work as well. Values are being passed in as python tuples.