Files
gkachele-saas/backups/backup-20260114-085602/local/demo/limpiar_db.py
2026-01-17 11:40:17 +01:00

67 lines
2.0 KiB
Python

"""
GKACHELE™ - Script para limpiar base de datos
© 2025 GKACHELE™. Todos los derechos reservados.
Uso: python limpiar_db.py
"""
import sqlite3
import os
BASE_DIR = os.path.dirname(__file__)
DATABASE_DIR = os.path.join(BASE_DIR, 'database')
MAIN_DB = os.path.join(DATABASE_DIR, 'main.db')
def limpiar_db():
"""Limpiar todas las tablas de la base de datos"""
if not os.path.exists(MAIN_DB):
print(f"❌ No se encontró la base de datos en: {MAIN_DB}")
return
try:
conn = sqlite3.connect(MAIN_DB)
c = conn.cursor()
# Mostrar datos actuales
c.execute('SELECT COUNT(*) FROM users')
user_count = c.fetchone()[0]
c.execute('SELECT COUNT(*) FROM sites')
site_count = c.fetchone()[0]
print("=" * 80)
print("📊 ESTADO ACTUAL DE LA BASE DE DATOS")
print("=" * 80)
print(f"Usuarios: {user_count}")
print(f"Sitios: {site_count}")
print("=" * 80)
respuesta = input("\n⚠️ ¿Estás seguro de que quieres limpiar TODA la base de datos? (escribe 'SI' para confirmar): ")
if respuesta.upper() != 'SI':
print("❌ Operación cancelada")
conn.close()
return
# Limpiar en orden (respetando foreign keys)
print("\n🗑️ Limpiando base de datos...")
c.execute('DELETE FROM widgets')
c.execute('DELETE FROM menus')
c.execute('DELETE FROM media')
c.execute('DELETE FROM content')
c.execute('DELETE FROM settings')
c.execute('DELETE FROM requests')
c.execute('DELETE FROM sites')
c.execute('DELETE FROM users')
conn.commit()
conn.close()
print("✅ Base de datos limpiada exitosamente")
except Exception as e:
print(f"❌ Error: {e}")
import traceback
traceback.print_exc()
if __name__ == '__main__':
limpiar_db()