DB2数据库中怎么查找拥有某一字段的所有表,比如字段'test'

如题所述

这个只能在命令行上搜索,很难一条命令做到。下面是在一台aix上执行,linux是一样的,希望帮到你。

先su到数据库实例用户

#su - <instName>

设定一个环境变量,这个变量很重要,不设置的话,后面的命令没法做

$export DB2DBDFT=<dbname>

好了,我们连接数据库

$db2 connect to <dbname>

我们用一条循环语句达到你要的效果

$db2 -x list tables for all|egrep -v "SYSCAT|SYSIBM|SYSIBMADM|SYSSTAT"|awk '{print "db2 describe table "$2"."$1}'|while read cm
>do<回车>
>echo "start command: "$cm<回车>
>$cm|grep -w test<回车>
>done<回车>

思路就是用describe table循环列出表格的字段结构,然后用grep过滤而已。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答