File size: 2,160 Bytes
4889299
09dd636
4889299
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
09dd636
4889299
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
09dd636
4889299
 
 
 
 
 
 
 
 
 
 
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
72
73
74
75
"""
Script para alterar la tabla 'action_call' en la base de datos remota
Agrega id como PRIMARY KEY y convierte usuario en UNIQUE
"""

import mysql.connector
from dotenv import load_dotenv
import os

# Cargar variables de entorno
load_dotenv()

try:
    # Conexión a la base de datos
    conexion = mysql.connector.connect(
        host=os.getenv('DB_HOST'),
        user=os.getenv('DB_USER'),
        password=os.getenv('mariadb_c'),
        database=os.getenv('DB_NAME'),
        port=int(os.getenv('DB_PORT', 3306)),
        autocommit=True
    )
    
    cursor = conexion.cursor()
    
    # Verificar si la columna id ya existe
    cursor.execute(f"""
        SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS 
        WHERE TABLE_NAME = 'action_call' AND COLUMN_NAME = 'id'
    """)
    
    if cursor.fetchone():
        print("ℹ️  El campo 'id' ya existe en la tabla")
    else:
        # Paso 1: Agregar la columna id
        print("📝 Agregando columna id...")
        cursor.execute("""
            ALTER TABLE actions 
            ADD COLUMN id INT AUTO_INCREMENT UNIQUE FIRST
        """)
        print("✅ Columna 'id' agregada")
        
        # Paso 2: Hacer id la PRIMARY KEY
        print("📝 Configurando id como PRIMARY KEY...")
        cursor.execute("""
            ALTER TABLE actions 
            DROP PRIMARY KEY,
            ADD PRIMARY KEY (id)
        """)
        print("✅ id configurado como PRIMARY KEY")
        
        # Paso 3: Hacer usuario UNIQUE (si no lo es ya)
        print("📝 Configurando usuario como UNIQUE...")
        cursor.execute("""
            ALTER TABLE actions 
            ADD UNIQUE KEY unique_usuario (usuario)
        """)
        print("✅ usuario configurado como UNIQUE")
        
        print("\n✅ Tabla riestructurada exitosamente")
    
    # Mostrar estructura actualizada
    cursor.execute("DESCRIBE action_call")
    columnas = cursor.fetchall()
    
    print("\n📋 Estructura actualizada:")
    for col in columnas:
        print(f"  - {col[0]}: {col[1]}")
    
    cursor.close()
    conexion.close()
    
except Exception as e:
    print(f"❌ Error: {str(e)}")