SQL对象依赖关系列表

2020-08-22 06:34发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个sql server 2008r2模型。

我想做什么:我想按照它们的依赖关系所指定的顺序来编译所有视图/存储过程脚本。 换句话说,如果View1使用View2,则View2的脚本应在View1的脚本之前运行。

是否可以使用PowerDesigner进行以下操作:

  1. 提取这样的依赖项列表,其中我将有2列:对象1,对象2,其中对于带有o1的行,o2表示o2被o1使用。 或者:
  2. 提取按依赖性排序的所有对象的列表,即,依赖于其他对象的对象将出现在这些对象之后的列表中。

如果在PD中无法轻松做到这一点,我将使用数据库目录视图来确定所有依赖关系,但我希望在PD中很容易做到。

谢谢

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个sql server 2008r2模型。

我想做什么:我想按照它们的依赖关系所指定的顺序来编译所有视图/存储过程脚本。 换句话说,如果View1使用View2,则View2的脚本应在View1的脚本之前运行。

是否可以使用PowerDesigner进行以下操作:

  1. 提取这样的依赖项列表,其中我将有2列:对象1,对象2,其中对于带有o1的行,o2表示o2被o1使用。 或者:
  2. 提取按依赖性排序的所有对象的列表,即,依赖于其他对象的对象将出现在这些对象之后的列表中。

如果在PD中无法轻松做到这一点,我将使用数据库目录视图来确定所有依赖关系,但我希望在PD中很容易做到。

谢谢

付费偷看设置
发送
4条回答
灬番茄
1楼-- · 2020-08-22 07:12

嗨,

PD有一些算法,应该使视图按正确的顺序生成(顺便说一句,即使没有可追溯性链接,我的示例也是按正确的顺序生成的)。 但是,如果您因任何原因而获得不正确的顺序,则可以使用特殊类型的依赖性来强制执行生成顺序。 从所附图片可以看到,我需要在View_1之后生成View_4。 因此,我在View_4上创建了新的Traceability链接,将其连接到View_1并将Link类型设置为" DBCreateAfter"。 您可以对过程执行相同的操作。 然后,您可以确定以正确的顺序生成DDL。

如果确实需要带有正确捕获了依赖关系的两列(object1和object2)的输出,则可以尝试创建列表报告。

1。 报告-列表报告向导...
2。 对象类型:选择"可跟踪性链接",然后按"下一步"按钮
3进行确认。 在"列"筛选器中,选中"源对象"和"链接对象"复选框(在屏幕快照的右下方)
4。 在"行筛选器"对话框中不执行任何操作,然后按Next。
5。 在内容预览对话框中,按"完成"。
6。 检查模型中新创建的列表报告。

与View References上的列表报告的不同之处在于,它将为您提供一个依赖关系列表,包括Views和Procedures。


关于

Ondrej

Cikesha
2楼-- · 2020-08-22 07:08

您需要了解报告显示的内容。 它是模型中的"可追溯性"链接的列表。 因此,在我的示例中,报告正好有3行,并且同时显示了过程和视图。 可追溯性链接是仅用于PD的对象,您不能从数据库撤消它们,只能手动创建它们(或通过PD中的VBscript)。 因此,我的"列表"报告显示的视图不是因为它们从其他视图中读取数据(您可以在图上的"视图"符号上看到它),而是因为它们是通过"可追溯性"链接手动连接的。


如果将它们与View References连接,则需要基于View References创建列表报告。

太Q了
3楼-- · 2020-08-22 07:26

您将很高兴听到答案很简单-在 在"模型菜单"中,选择"视图参考"以获取视图参考列表,其中应包括您的父级和子级。 如果需要有关父级和子级的更多信息,请创建"视图引用的列表报告"。

追夢秋陽
4楼-- · 2020-08-22 07:31

您可以在一个模型中维护多个数据库(例如,通过使用PD包),但是您应该拥有 严重的原因。 此类影响重大的决定都有利有弊。 如果将多个数据库放在一个模型中,则创建数据库间连接可以使生活更轻松,但另一方面,这可能意味着更大的模型(使用存储库时签入/签出速度较慢),更多用户在并行工作中更加困难 一种型号,更多的高清空间用于存储新版本等。因此,请谨慎选择。 我的一般建议是拥有更多的较小型号,而不是少数大型型号。 但这当然是一般性建议,却不知道您的当前情况,需求,过程,模型的大小等。

一周热门 更多>