我正在尝试使用ReadyRoll项目进行自动部署。我创建的上一个项目在导入数据库后生成的第一个迁移脚本中具有以下 IF TYPE_ID(N'[dbo]。[abc_PrintType]')IS NULL 。我想知道检查项目属性的哪个选项生成相同的代码行,
GO
PRINT N'Print types'
GO
IF TYPE_ID(N'[dbo].[abc_PrintType]') IS NULL
CREATE TYPE [dbo].[abc_PrintType] AS TABLE
(...)
答案 0 :(得分:2)
您正在寻找的选项是添加对象存在检查。
可以在项目中启用此功能,方法是在 .sqlproj 文件中的<Project>
节点下添加以下代码:
<PropertyGroup>
<!-- "Add object existence checks" SQL Compare option -->
<SyncOptionIncludeExistenceChecks>True</SyncOptionIncludeExistenceChecks>
</PropertyGroup>
下次导入更改时,生成的脚本将包含IF EXISTS...
样式保护条款。
有关如何配置此内容的更多信息,请参阅ReadyRoll文档: https://documentation.red-gate.com/pages/viewpage.action?pageId=42539778