Spaces:
Sleeping
Sleeping
File size: 2,240 Bytes
fd0df2b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | """Script para crear la tabla funel_compra"""
from connection import get_connection
import logging
logging.basicConfig(level=logging.INFO, format='%(message)s')
logger = logging.getLogger(__name__)
def create_funel_compra_table():
"""Crea la tabla funel_compra en la BD"""
conn = get_connection()
if not conn:
logger.error("โ No se pudo conectar a la base de datos")
return False
try:
cursor = conn.cursor()
logger.info("๐ Creando tabla funel_compra...")
sql = """
CREATE TABLE IF NOT EXISTS `funel_compra` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`usuario` VARCHAR(255) NOT NULL,
`mail` VARCHAR(255) NOT NULL,
`accion` VARCHAR(255) NOT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP(),
INDEX idx_usuario (usuario),
INDEX idx_mail (mail),
INDEX idx_accion (accion),
INDEX idx_created_at (created_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
"""
cursor.execute(sql)
conn.commit()
logger.info("โ
Tabla 'funel_compra' creada exitosamente")
# Describir tabla
cursor.execute("DESCRIBE funel_compra")
fields = cursor.fetchall()
cursor.close()
conn.close()
logger.info("\n๐ Estructura de la tabla:")
logger.info("=" * 100)
logger.info(f"{'Campo':<20} | {'Tipo':<25} | {'Null':<6} | {'Key':<8} | {'Extra':<30}")
logger.info("-" * 100)
for field in fields:
field_name = field[0]
field_type = field[1]
field_null = field[2]
field_key = field[3]
field_extra = str(field[5]) if field[5] else '-'
logger.info(f"{field_name:<20} | {field_type:<25} | {field_null:<6} | {field_key:<8} | {field_extra:<30}")
logger.info("=" * 100)
return True
except Exception as e:
logger.error(f"โ Error al crear la tabla: {str(e)}")
conn.close()
return False
if __name__ == "__main__":
create_funel_compra_table()
|