'Update our field attributes using a single row returned by SELECT.
:param row - A sequence of values corresponding to fields named in
the class fields list.'

def _update_fields_from_row(self, row):

    self._assert_row_length(row)
    self._valid_fields = set()
    for (field, value) in itertools.izip(self._fields, row):
        setattr(self, field, value)
        self._valid_fields.add(field)
    self._valid_fields.remove('id')
