This is probably pretty late to be replying but I had the same problem. As it turns out, you just need to be sure you use the correct syntax to call the sproc: db_cur.execute( "{call test_bed(?)}", ('test data string') ) -- Teleoperate a roving mobile robot from the web: http://www.swampgas.com/robotics/rover.html