Hello, The result iterator being a input iterator, I suspect this loop is incorrect: odb::result<myobject> result = db.query<myobject>(....); for( auto& obj: result ) { obj.myfield = ""; db.update(obj); } Am I right? I think the above SEGV What is the correct way of storing empty strings for a group of objects?