def borrar_persona(id_persona): if not check_exists(id_persona): return False delete_query = """ DELETE FROM Persona WHERE id = ?; """ return execute_query(delete_query, (id_persona,)) is None
def crear_tabla_peso(): create_table = """ CREATE TABLE IF NOT EXISTS Peso ( id integer PRIMARY KEY, idPersona integer, fecha text, peso integer, FOREIGN KEY(idPersona) REFERENCES Persona(id) ); """ return execute_query(create_table)
def get_last_record(id_persona): select_query = """ SELECT Max(Peso.fecha) FROM Persona JOIN Peso ON Peso.idPersona = Persona.id WHERE Persona.id = ?; """ last_date = execute_query(select_query, (id_persona, ))[0] if last_date is None: return None last_date = datetime.datetime.strptime(last_date, '%Y-%m-%d') return last_date
def actualizar_persona(id_persona, nombre, nacimiento, dni, altura): if not check_exists(id_persona): return False update_query = """ UPDATE Persona SET id = ?, name = ?, birth_date = ?, DNI = ?, altura = ? WHERE id = ?; """ parameters = (id_persona, nombre, datetime.datetime.strftime(nacimiento, '%Y-%m-%d'), dni, altura, id_persona) return execute_query(update_query, parameters)
def agregar_peso(id_persona, fecha, peso): if not check_exists(id_persona): return False last_date = get_last_record(id_persona) if not last_date is None and fecha < last_date: return False insert_query = """ INSERT INTO Peso (idPersona, fecha, peso) VALUES (?, ?, ?); """ data = ( id_persona, datetime.datetime.strftime(fecha, '%Y-%m-%d'), peso, ) return execute_query(insert_query, data) is None
def borrar_tabla_peso(): drop_table = " DROP TABLE IF EXISTS Peso; " execute_query(drop_table)