将列添加到具有特定序号位置的DB2/400表

jwl*_*jwl 5 sql db2 db2-400 ibm-midrange

在AS400/iSeries/System-i /是否有一个SQL命令将列添加到特定序号位置的表,或将现有列移动到其他位置?

Dav*_*d G 8

IBM i 7.1现在允许您在另一个列前添加列.

ALTER TABLE table ADD COLUMN colname ... BEFORE othercolumn


Mic*_*rek 6

号的ALTER TABLE语句将允许您添加一列一个表,但是,根据文档:

新列是表的最后一列; 也就是说,如果最初有n列,则添加的列是列n + 1.

如果您想更改表格中的列顺序,最好的办法是:

  1. 使用RENAME语句重命名表.
  2. 使用原始名称重新创建表,并按所需顺序重新创建列.
  3. 使用INSERT SELECT使用重命名表中的数据填充新表.
  4. 当您确定数据完好无损时,可以删除该表的重命名版本.