Great!!! I was wondering why it was not working...
And if you want to check multiple fields, here is an example : db.table.update_or_insert( (db.table.filename==up['filename']) & (db.table.uploader==uploader.id) , author=ddl['author'] , uploader=uploader.id , filename=ddl['filename'] , description=ddl['description'] ) Will update author and description to the corresponding field with FILENAME and UPLOADER ;) Cheers, Thomas