def find_by_id(self, id): """Suchen eines moduls mit vorgegebener id. Da diese eindeutig ist, wird genau ein Objekt zurückgegeben. :param id Primärschlüsselattribut (->DB) :return modul-Objekt, das dem übergebenen Schlüssel entspricht, None bei nicht vorhandenem DB-Tupel. """ result = None cursor = self._cnx.cursor() command = "SELECT * FROM module WHERE id={}".format(id) cursor.execute(command) tuples = cursor.fetchall() if tuples[0] is not None: (id, creation_time, name, edv_nr) = tuples[0] module = Module() module.set_id(id) module.set_creation_time(creation_time) module.set_name(name) module.set_edv_nr(edv_nr) result = module self._cnx.commit() cursor.close() return result
def find_by_name(self, name): """Auslesen aller Benutzer anhand des Benutzernamens. :param name Name der zugehörigen Benutzer. :return Eine Sammlung mit User-Objekten, die sämtliche Benutzer mit dem gewünschten Namen enthält.""" result = [] cursor = self._cnx.cursor() command = "SELECT * FROM module WHERE name LIKE '{}' ORDER BY name".format( name) cursor.execute(command) tuples = cursor.fetchall() for (id, creation_time, name, edv_nr) in tuples: module = Module() module.set_id(id) module.set_creation_time(creation_time) module.set_name(name) module.set_edv_nr(edv_nr) result.append(module) self._cnx.commit() cursor.close() return result
def create_module(self, id, creation_time, name, edv_nr): """Ein Modul anlegen""" module = Module() module.set_name(name) module.set_edv_nr(edv_nr) module.set_id(id) module.set_creation_time(creation_time) module.set_id(1) with ModuleMapper() as mapper: return mapper.insert(module)
def find_by_edv_nr(self, edv_nr): result = [] cursor = self._cnx.cursor() command = "SELECT * FROM module WHERE name LIKE '{}' ORDER BY edv_nr".format( edv_nr) cursor.execute(command) tuples = cursor.fetchall() for (id, creation_time, name, edv_nr) in tuples: module = Module() module.set_id(id) module.set_creation_time(creation_time) module.set_name(name) module.set_edv_nr(edv_nr) result.append(module) self._cnx.commit() cursor.close() return result
def find_all(self): """Auslesen aller Module. :return Eine Sammlung mit Modul-Objekten, """ result = [] cursor = self._cnx.cursor() cursor.execute("SELECT * from module") tuples = cursor.fetchall() for (id, creation_time, name, edv_nr) in tuples: module = Module() module.set_id(id) module.set_creation_time(creation_time) module.set_name(name) module.set_edv_nr(edv_nr) result.append(module) self._cnx.commit() cursor.close() return result