如何在Azure SQL数据库中与从SQLPROJ创建的Azure SQL数据库中的SQL对象之间的区别



问题:我们需要从Azure SQL数据库中删除Dead SQL对象(表,表,视图,存储的Procs等)不使用的DB且不属于SQL DB项目(SQLPROJ)。

所以我想知道是否有一种方法可以识别那些死去的SQL对象或找出SQL数据库中SQL对象之间的区别,而SQLProJ?

SQL Server数据工具中是否有标志,可以帮助实现这一目标或任何可能使我有所不同的东西?

您可以使用/操作部署:deployreport

https://msdn.microsoft.com/library/hh550080(vs.103).aspx#anchor_5

这将为您提供一个对象列表:

  • 两者都存在,但是不同的
  • 仅存在于DACPAC
  • 仅存在于实时数据库中

您也可以使用Visual Studio(SSDT)内的比较工具或使用Redgate SQL Comparare之类的东西来执行此操作 - 如果这是一个关闭,我可能只会使用它,因为我喜欢UI,但我有一个副本所以可以:)

这个问题通常是通过部署而解决的解决的,并且数据库中不在源控件中的任何内容都将被删除。如果您始终遵循从DACPAC部署的过程,您将无法在这种情况下获得。

听起来您可能想做一次事情来找出不同的事物,并可能在丢弃它们之前在某个地方测试这些更改。

与SSDT一起工作的每个人都有一个确切的问题,解决该问题的唯一方法是将SQLPROJ或数据库获取到已知状态并继续从DACPAC部署。

ed

您可以使用SQL Server Data Tools(SSDT)上可用的架构比较选项。

您可以从这里免费下载SSDT。

希望这会有所帮助。

相关内容

  • 没有找到相关文章

最新更新