from src import connection def insert_backup_records(partner_id, isrc_list, cursor): isrcs_string_placeholder = ",".join(["%s"] * len(isrc_list)) sql_insert = """INSERT INTO masters_delivery_history_deleted (id, isrc, tuid, upc, partner_id, delivery_date, inserted_datetime) SELECT id, isrc, tuid, upc, partner_id, delivery_date, NOW() FROM masters_delivery_history WHERE partner_id = %s AND isrc IN (%s)""" % ( "%s", isrcs_string_placeholder, ) # replace all ISRC entries with %s placeholders insert_bindings = (partner_id,) + tuple(isrc_list) # create one tuple with all params print("Arguments are %s" % str(insert_bindings)) cursor.execute(sql_insert, insert_bindings) def delete_records(partner_id, isrc_list, cursor): isrcs_string_placeholder = ",".join(["%s"] * len(isrc_list)) sql_delete = """DELETE FROM masters_delivery_history WHERE partner_id = %s AND isrc IN (%s)""" % ("%s", isrcs_string_placeholder) # replace all ISRC entries with %s placeholders delete_bindings = (partner_id,) + tuple(isrc_list) # create one tuple with all params print("Arguments are %s" % str(delete_bindings)) cursor.execute(sql_delete, delete_bindings) def clear_delivery_history_isrcs(partner_id, isrc_list): db_connection = connection.delivery_history_db_connection() cursor = db_connection.cursor() try: insert_backup_records(partner_id, isrc_list, cursor) delete_records(partner_id, isrc_list, cursor) db_connection.commit() finally: try: cursor.close() except Exception: pass db_connection.close()