部署后脚本中的执行过程-SSDT
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了部署后脚本中的执行过程-SSDT相关的知识,希望对你有一定的参考价值。
在我的部署后脚本文件中,我正在执行最初在db项目本身中创建的存储过程:
数据库项目:
但是每当我发布数据库项目时,都会出现以下错误
过程st_company_register,第56536行插入失败,因为以下SET选项的设置不正确:“ ANSI_PADDING”。校验SET选项正确用于索引视图和/或索引在计算列和/或过滤索引和/或查询通知上和/或XML数据类型方法和/或空间索引操作。
以下为步骤:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create PROCEDURE [dbo].[st_company_register]
@languageID int,
@company_typeID int,
@company_name nvarchar(100)
--Untill the end of proc
这是执行代码:
exec [dbo].[st_company_register]
@languageID =1,
@company_typeID =4,
@company_name =N'Company Name'
这是我的db项目设置,其ANSI_PADDING处于:
有什么想法吗?
答案
为了避免在执行存储过程时出现此问题在部署后脚本中,只需用Set ANSI_PADDING ON包装执行语句,如下所示:
Set ANSI_PADDING ON
exec [dbo].[Proc]
@languageID =1,
@company_typeID =4,
@company_name =N'Company Name'
Set ANSI_PADDING OFF
以上是关于部署后脚本中的执行过程-SSDT的主要内容,如果未能解决你的问题,请参考以下文章