定位名称中包含字符串的列



除了手动遍历整个数据库中的每个表模式,我如何生成包含包含字符串"email"字段的所有表的列表?在《无处不在》里?

例如,在IBM DB2中,我可以使用这样的查询来实现这一点:

select tabschema,tabname,colname
from syscat.columns
where upper(colname) LIKE UPPER('%email%')
order by tabname

如何在普适13中实现这一点?

您可以查询系统对象,使用:

SELECT f.Xf$Name, g.Xe$Name
FROM X$File f
INNER JOIN X$Field g ON g.Xe$File = f.Xf$Id
WHERE UPPER(g.Xe$Name) LIKE '%EMAIL%';

我仍然接受其他建议,但是我这样做的方式是通过将数据库模式导出到.sql文本文件,并且我使用正则表达式create table.*email来搜索该文件并找到包含名称中包含email列的所有表。

这是有效的,但我期待其他人的建议。

相关内容

  • 没有找到相关文章

最新更新