import os import sys from sqlalchemy import create_engine, text from dotenv import load_dotenv # Añadir el directorio actual al path sys.path.append(os.path.dirname(os.path.abspath(__file__))) load_dotenv() DATABASE_URL = os.getenv("DATABASE_URL") if DATABASE_URL: print("Conectando a base de datos de producción (PostgreSQL/Supabase)...") engine = create_engine(DATABASE_URL) else: print("Conectando a base de datos de desarrollo local (SQLite)...") engine = create_engine("sqlite:///./musical_master.db") def main(): print("==================================================") print(" EJECUTANDO MIGRACION: groups.is_suspended COLUMN") print("==================================================") with engine.connect() as conn: try: # Detectar motor de BD is_sqlite = "sqlite" in str(engine.url) if is_sqlite: print("Agregando columna 'is_suspended' a 'groups' (SQLite)...") conn.execute(text("ALTER TABLE groups ADD COLUMN is_suspended INTEGER DEFAULT 0")) else: print("Agregando columna 'is_suspended' a 'groups' (PostgreSQL)...") conn.execute(text("ALTER TABLE groups ADD COLUMN is_suspended BOOLEAN DEFAULT FALSE")) conn.commit() print("[OK] Columna 'is_suspended' agregada exitosamente a la tabla 'groups'.") except Exception as e: error_str = str(e).lower() if "duplicate column" in error_str or "already exists" in error_str: print("[INFO] La columna 'is_suspended' ya existe en la tabla 'groups'.") else: print(f"[ERROR] Error al agregar columna: {e}") print("==================================================") print(" MIGRACION COMPLETADA") print("==================================================") if __name__ == "__main__": main()