ARTÍCULO: reorganizar una tabla

Feb
17
2017

En ocasiones es necesario cambiar el orden de los campos de una tabla o bien cambiar el propietario de la misma. Esto no se puede realizar de forma directa.

Para poder realizarlo sería necesario crear una nueva tabla con la nueva estructura, llenarla con los datos actuales y después cambiar el nombre.

El procedimiento sería de la forma:

CREATE TABLE nueva_tabla
(
campo1 SMALLINT,
campo3 INTEGER,
campo2 SMALLINT,
campo5 SMALLINT,
campo6 CHAR(3),
campo4 MONEY(8)
);
INSERT INTO nueva_tabla
SELECT campo1,campo3,campo2,campo5,campo6,campo4 FROM antigua_tabla;
DROP TABLE antigua_tabla;
RENAME TABLE nueva_tabla TO antigua_tabla;

Si tuviéramos índices ahora sería el momento de crearlos. Sin embargo, si hubiera integridad referencial sobre esta tabla no sería posible realizar el cambio sin quitar esa integridad y volviéndola a poner a continuación

Para cualquier tema relacionado con este artículo o relacionado con informix, no dude en ponerse en contacto con nosotros en info@proyectosysoluciones.es