系统诊断增加设备检测

This commit is contained in:
2026-01-11 18:00:32 +08:00
parent f860c5a216
commit b40ea0112a
13 changed files with 537 additions and 247 deletions

View File

@ -80,6 +80,25 @@ class DBHelper:
messages = cursor.fetchall() # 结果:[(content, is_processed, create_time, last_modified), ...]
conn.close()
return messages[::-1] # 反转后按时间正序排列
def clean_expired_messages(self, days_to_keep=30):
"""删除超过指定天数(默认30天, 一个月)的过期消息,并压缩数据库"""
from datetime import datetime, timedelta
# 计算过期时间(当前时间 - days_to_keep天
expire_time = (datetime.now() - timedelta(days=days_to_keep)).strftime("%Y-%m-%d %H:%M:%S")
conn = sqlite3.connect(self.db_name)
cursor = conn.cursor()
# 删除过期消息
cursor.execute('''
DELETE FROM messages
WHERE create_time < ?
''', (expire_time,))
conn.commit()
# 压缩数据库,释放删除后的空闲空间
cursor.execute("VACUUM")
conn.commit()
conn.close()
if __name__ == "__main__":