SQL Server中的__RefactorLog表 - 可以放弃它吗?

noo*_*and 11 sql-server sql-server-data-tools

SSDT(我怀疑)在你指向它的任何数据库中创建一个名为__RefactorLog的表.

如果我发布了一个版本是否有任何损害删除此表,因为我没有看到在部署时将其包含在架构创建脚本中的任何好处?

我自己也看不到任何不利因素,但我想向这里知识渊博的人提出问题,看看是否有我遗漏的东西......

Ed *_*ott 17

它是由SSDT在SSDT中使用重构器(如Refactor - > Rename)创建的,如果你进行部署并清除表格,它将重试进行任何可能失败或导致灾难的旧重构!

如果清除表,请确保还从项目中的refactorlog.xml中删除条目 - 该文件非常明显.

确保你没有尝试部署一个旧的dacpac(我想这不太可能)

埃德

  • Ed的回答很准确.我只想指出,SSDT项目中最常见的"重构"操作是使用表设计器重命名表中的列.在T-SQL面板中编辑列名称不被视为重构操作,但在表设计器中编辑列名称被视为重构.这是一个微妙但重要的行为. (5认同)