首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以搜索字段的所有依赖项?

是否可以搜索字段的所有依赖项?
EN

Stack Overflow用户
提问于 2019-04-04 09:53:52
回答 2查看 1.4K关注 0票数 0

我在我的数据库中搜索一个特定的行,并且想知道ibexpert中是否有一个函数来查找一个字段的所有依赖项。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-05 14:47:41

在表中选择字段时,单击“字段依赖项”选项卡。

票数 3
EN

Stack Overflow用户

发布于 2019-04-05 12:42:17

我不知道IBExpert,但通常在Firebird中,您可以在系统表RDB$DEPENDENCIES中找到依赖项。它不会准确地告诉您在哪一行代码上使用某个字段,但它将帮助您识别它使用的对象。然后就是检查这个特定对象的源代码,看看它在哪里使用。

RDB$DEPENDENCIES有以下列(在FireBird2.5中):

  • RDB$DEPENDENT_NAME -“依赖”(使用依赖项的对象)的名称(如存储过程名称)
  • RDB$DEPENDED_ON_NAME -依赖项的名称(如表名)
  • RDB$FIELD_NAME -依赖项的字段名(例如表列);可以是非字段依赖项的NULL
  • RDB$DEPENDENT_TYPE -依赖项的类型(例如0=关系(表或视图),可能的值请参见RDB$TYPES with RDB$FIELD_NAME = 'RDB$OBJECT_TYPE )
  • RDB$DEPENDED_ON_TYPE -依赖项的类型(列依赖项类型为0,RDB$FIELD_NAME类型为null,表/视图依赖项类型为0,RDB$FIELD_NAME为null )。

例如,可以使用以下查询:

代码语言:javascript
复制
select dep.*, tt.RDB$TYPE_NAME as DEPENDENT_OBJECT_TYPE, dt.RDB$TYPE_NAME as DEPENDED_ON_OBJECT_TYPE
from RDB$DEPENDENCIES dep
inner join RDB$TYPES tt
  on tt.RDB$TYPE = dep.RDB$DEPENDENT_TYPE 
    and tt.RDB$FIELD_NAME = 'RDB$OBJECT_TYPE'
inner join RDB$TYPES dt
  on dt.RDB$TYPE = dep.RDB$DEPENDED_ON_TYPE 
    and dt.RDB$FIELD_NAME = 'RDB$OBJECT_TYPE'
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55512959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档