'Fetch the next row of a query result set, returning a single sequence,
or None when no more data is available.
An Error (or subclass) exception is raised if the previous call to executeXXX()
did not produce any result set or no call was issued yet.'

def fetchone(self):

    self.messages = []
    ret = self._fetch(1)
    if ret:
        return ret[0]
    else:
        return ret
