Spaces:
Sleeping
Sleeping
File size: 2,227 Bytes
6dc5ac9 |
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 |
#!/usr/bin/env python3
"""Script para crear la tabla de registro en MariaDB"""
from connection import get_connection
import sys
def init_database():
"""Crea la tabla de registro si no existe"""
conn = get_connection()
if not conn:
print("❌ Error: No se pudo conectar a la base de datos")
sys.exit(1)
try:
cursor = conn.cursor()
# SQL para crear la tabla
sql_create_table = """
CREATE TABLE IF NOT EXISTS `registro` (
`id` BINARY(16) PRIMARY KEY COMMENT 'UUID en formato binario',
`display_name` VARCHAR(255) COMMENT 'Nombre mostrado del usuario',
`pais` VARCHAR(255) COMMENT 'País del usuario',
`correo` VARCHAR(255) UNIQUE COMMENT 'Email del usuario',
`fecha_registro` DATETIME COMMENT 'Fecha de registro',
`usos` INT DEFAULT 0 COMMENT 'Cantidad de usos',
`prompt` VARCHAR(255) COMMENT 'Prompt utilizado',
`proveedor` VARCHAR(255) COMMENT 'Proveedor del servicio',
`seed` INT COMMENT 'Seed para generación',
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT 'Fecha de creación',
KEY `idx_correo` (`correo`),
KEY `idx_pais` (`pais`),
KEY `idx_fecha_registro` (`fecha_registro`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
COMMENT='Tabla de registro de usuarios'
"""
cursor.execute(sql_create_table)
conn.commit()
print("✅ Tabla 'registro' creada correctamente")
# Verificar la tabla
cursor.execute("DESCRIBE `registro`")
columnas = cursor.fetchall()
print("\n📋 Estructura de la tabla:")
print("-" * 60)
for col in columnas:
print(f" {col[0]:<20} {col[1]:<30} {col[2]}")
cursor.close()
conn.close()
except Exception as e:
print(f"❌ Error al crear la tabla: {e}")
sys.exit(1)
if __name__ == "__main__":
print("🔨 Inicializando base de datos...")
print("-" * 60)
init_database()
print("\n✅ Base de datos lista para usar")
|