关于视图创建时候的依赖关系,希望大家能提供个好的解决办法!

hk8846 2008-03-20 09:45:30
现在我有100多个视图,其中有的视图调用了其它的视图(也就是说视图之间有依赖关系),当我在sql server中使用批量生成的sql脚本来创建这些视图,然后部署执行这些创建视图的sql脚本的时候,因为sql脚本是按顺序来执行的,所以导致当我执行前面的创建视图的sql脚本时,由于用到了后面的视图,但后面的视图还没有创建,所以就导致报错:比如说找不到 视图 等,我想问问大家有什么好的方法来解决这种问题,因为视图太多了,不可能一个个的去找出每个视图之间的依赖关系后再排序之后来执行。
...全文
205 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxmcxm 2008-03-21
  • 打赏
  • 举报
回复
系统表sysdepends可查看视图之间的关系

--以下可查出那些视图是依靠视图创建的
select * from sysobjects a where type='V'
and exists(select * from sysdepends b where id=a.id and
exists(select * from sysobjects where type='V' and id=b.depid))

--以下可查出视图与相关用于创建视图的名称
select object_name(id),object_name(depid) from sysdepends b where exists(select * from sysobjects where type='V' and id=b.depid)
yesyesyes 2008-03-21
  • 打赏
  • 举报
回复
这只能自己去判断了
要么所有的视图都基于基表,不要基于视图,这样不要判断先后了
dawugui 2008-03-20
  • 打赏
  • 举报
回复
利用PB可以看到各表之间的关系.
JiangHongTao 2008-03-20
  • 打赏
  • 举报
回复
好像用PD 的反向工程可以解决这个问题。

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧