代码之家  ›  专栏  ›  技术社区  ›  Marco

由于不可修复的依赖关系,无法删除视图

  •  0
  • Marco  · 技术社区  · 5 年前

    我正在跟踪SQLCMD迁移脚本中的一个bug,在删除未使用的对象时。

    Msg 208, Level 16, State 1, Server XXXXXXXXXXX\XXX_DEV, Procedure vwEmployeeCompleteAll, Line 47
    Invalid object name "vwTeamsLatest".
    

    所讨论的脚本如下所示:

    USE [DatabaseName]
    GO
    
    DROP PROCEDURE IF EXISTS dbo.spPrepareDischarge
    DROP VIEW IF EXISTS ....
    /*a handful of other views being dropped*/
    DROP VIEW IF EXISTS dbo.vwTeamsLatest
    

    vwEmployeeCompleteAll 不依赖于 vwTeamsLatest 首先,我手动遍历了对象图几次,以验证我在级联过程中没有忽略它,然后使用ApexSQL分析器进行了双重检查。从这两个角度来看,两个文件都不依赖于另一个。

    vwTeamsLatest 而且它不会出现在任何已使用的视图、存储过程或函数中。

    正在使用的系统是SQL Server 2017

    0 回复  |  直到 5 年前
        1
  •  0
  •   Marco    5 年前

    晚上睡个好觉让我有了一些距离,重新思考我的方法。

    当然,如果TWA是 vwTeamsLatest

    推荐文章