Pregunta

¿Hay un comando SQL en el AS400 / iSeries / System-i / lo que sea para añadir una columna a una tabla en una posición ordinal específica, o mover una columna existente a una posición diferente?

¿Fue útil?

Solución

IBM i 7.1 ahora permite agregar una columna delante de otro.

ALTER TABLE table ADD COLUMN colname ... BEFORE othercolumn

Otros consejos

No. La ALTER TABLE permitirá agregar una columna a una tabla, pero, de acuerdo con la documentación:

  

La nueva columna es la última columna de la tabla; es decir, si inicialmente hay n columnas, la columna añadida es la columna n + 1.

Si desea cambiar el orden de las columnas en la tabla, la mejor opción es:

  1. Utilice el sentencia RENAME para cambiar el nombre de la tabla.
  2. crear la tabla, con su nombre original, con las columnas en el orden que desee.
  3. Usar un INSERT SELECT para poblar la nueva tabla con los datos de la tabla ha cambiado el nombre.
  4. Cuando esté seguro de los datos está intacta, se puede eliminar la versión ha cambiado el nombre de la tabla.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top