在db2cc中为所有数据库更改表

时间:2017-06-15 05:00:15

标签: db2

是否有人帮助我找到一种方法来替换所有当前和连接数据库的DB2CC工具(用于Windows)中的DB2表。我是这个环境的新手。 (DB2版本9.7) 我们有多个测试环境,由于一次更改,很少有新列的少数几个已经存在的DB2表,要么我们去每个数据库并运行该表的ALTER查询(这是一个长过程,我们有大约50个奇数据库)或者我可以只为所有数据库中的所有表使用单个脚本执行相同的操作吗?提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以在shell中执行脚本来执行此操作。但是,您的问题太模糊,脚本可能类似于以下内容(您需要将其转换为CMD或PowerShell)。

在bash(linux)

MYTABLE=mytable
MYCOLUMN="mycolumn integer"
for i in $(db2 list db directory | awk '/alias/ {print $4}') ; do
  db2 connect to $i
  db2 "alter table ${MYTABLE} add ${MYCOLUMN}"
done

这将在当前节点/实例中calaloged的所有数据库的mytable表中添加一个名为mycolumn的整数类型的列。

顺便说一句,db2cc太旧了,不推荐使用。