renombrarColumna
Change the name of an existing column in a database table by specifying the table, current column name, new name, and data type.
Instructions
Sigue estas reglas OBLIGATORIAS para renombrar una columna: ADVERTENCIA: Renombrar una columna es una acción delicada que puede romper consultas o código de aplicación que dependan de ella. Procede con cuidado. PROPÓSITO: Cambiar el nombre de una columna existente dentro de una tabla. REQUISITO: Debes proporcionar el tipo de dato de la columna junto con el nuevo nombre. USO: Especifica la tabla, el nombre actual, el nuevo nombre y el tipo de dato. EJEMPLO: "Renombra la columna nombre a nombre_completo en la tabla empleados."
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| columnaActual | Yes | Nombre actual de la columna | |
| nuevoNombre | Yes | Nuevo nombre para la columna | |
| tabla | Yes | Nombre de la tabla | |
| tipo | Yes | Tipo de la columna (ej. VARCHAR(255) NOT NULL) |
Implementation Reference
- mcp_server.js:484-500 (handler)Handler function for 'renombrarColumna' tool: validates params, builds database-specific ALTER TABLE SQL to rename column (CHANGE for MySQL requiring type, RENAME COLUMN for others), executes via query_runner.runQuery, returns success or error message.async ({ tabla, columnaActual, nuevoNombre, tipo }) => { try { if (!tabla || !columnaActual || !nuevoNombre || !tipo) { return { isError: true, content: [{ type: 'text', text: 'Debes proporcionar la tabla, columna actual, nuevo nombre y tipo.' }] }; } let sql; if (db_type === 'mysql') { sql = `ALTER TABLE ${quoteIdent(tabla)} CHANGE ${quoteIdent(columnaActual)} ${quoteIdent(nuevoNombre)} ${tipo}`; } else { sql = `ALTER TABLE ${quoteIdent(tabla)} RENAME COLUMN ${quoteIdent(columnaActual)} TO ${quoteIdent(nuevoNombre)}`; } await query_runner.runQuery(sql); return { content: [{ type: 'text', text: `Columna renombrada de '${columnaActual}' a '${nuevoNombre}' exitosamente.` }] }; } catch (e) { return { isError: true, content: [{ type: 'text', text: 'Error al renombrar la columna: ' + (e.message || e) }] }; } }
- mcp_server.js:478-482 (schema)Zod schema defining input parameters for the 'renombrarColumna' tool: tabla, columnaActual, nuevoNombre, tipo.{ tabla: z.string().describe('Nombre de la tabla'), columnaActual: z.string().describe('Nombre actual de la columna'), nuevoNombre: z.string().describe('Nuevo nombre para la columna'), tipo: z.string().describe('Tipo de la columna (ej. VARCHAR(255) NOT NULL)'),
- mcp_server.js:470-501 (registration)Registration of the 'renombrarColumna' tool using server.tool(), including description, schema, and handler function.server.tool( 'renombrarColumna', 'Sigue estas reglas OBLIGATORIAS para renombrar una columna:\n' + 'ADVERTENCIA: Renombrar una columna es una acción delicada que puede romper consultas o código de aplicación que dependan de ella. Procede con cuidado.\n' + 'PROPÓSITO: Cambiar el nombre de una columna existente dentro de una tabla.\n' + 'REQUISITO: Debes proporcionar el tipo de dato de la columna junto con el nuevo nombre.\n' + 'USO: Especifica la tabla, el nombre actual, el nuevo nombre y el tipo de dato.\n' + 'EJEMPLO: "Renombra la columna nombre a nombre_completo en la tabla empleados."', { tabla: z.string().describe('Nombre de la tabla'), columnaActual: z.string().describe('Nombre actual de la columna'), nuevoNombre: z.string().describe('Nuevo nombre para la columna'), tipo: z.string().describe('Tipo de la columna (ej. VARCHAR(255) NOT NULL)'), }, async ({ tabla, columnaActual, nuevoNombre, tipo }) => { try { if (!tabla || !columnaActual || !nuevoNombre || !tipo) { return { isError: true, content: [{ type: 'text', text: 'Debes proporcionar la tabla, columna actual, nuevo nombre y tipo.' }] }; } let sql; if (db_type === 'mysql') { sql = `ALTER TABLE ${quoteIdent(tabla)} CHANGE ${quoteIdent(columnaActual)} ${quoteIdent(nuevoNombre)} ${tipo}`; } else { sql = `ALTER TABLE ${quoteIdent(tabla)} RENAME COLUMN ${quoteIdent(columnaActual)} TO ${quoteIdent(nuevoNombre)}`; } await query_runner.runQuery(sql); return { content: [{ type: 'text', text: `Columna renombrada de '${columnaActual}' a '${nuevoNombre}' exitosamente.` }] }; } catch (e) { return { isError: true, content: [{ type: 'text', text: 'Error al renombrar la columna: ' + (e.message || e) }] }; } } );