Remove data for old links

This commit is contained in:
Parker M. 2024-02-25 18:13:03 -06:00
parent 236f050f54
commit 93d1dab63a
No known key found for this signature in database
GPG Key ID: 95CD2E0C7E329F2A

View File

@ -0,0 +1,23 @@
import sqlalchemy
import datetime
from db import engine
"""
Remove all links and associated records when the expire date has passed
"""
def remove_old_data():
with engine.begin() as conn:
today = datetime.datetime.date(datetime.datetime.now())
old_links = conn.execute(sqlalchemy.text('SELECT link FROM links WHERE expire_date < :today'), [{'today': today}])
delete_links = []
for row in old_links:
link = row.link
delete_links.append({'link': link})
with engine.begin() as conn:
conn.execute(sqlalchemy.text('DELETE FROM links WHERE link = :link'), delete_links)
conn.execute(sqlalchemy.text('DELETE FROM records WHERE link = :link'), delete_links)
conn.commit()