post 部署脚本中的执行程序 - SSDT
Executing procedure in post deployment script - SSDT
在我的 post-部署脚本文件中,我正在执行最初在 db 项目本身中创建的存储过程:
数据库项目:
但是每当我发布 db 项目时,我都会收到以下错误
Procedure st_company_register, Line 56536 INSERT failed because the
following SET options have incorrect settings: 'ANSI_PADDING'. Verify
that SET options are correct for use with indexed views and/or indexes
on computed columns and/or filtered indexes and/or query notifications
and/or XML data type methods and/or spatial index operations.
程序如下:
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'
这是我的数据库项目设置,其中有 ANSI_PADDING:
有什么想法吗?
要在 post 部署脚本 中执行存储过程 时避免此问题,只需使用 Set [=17] 包装执行语句=] ON 如下:
Set ANSI_PADDING ON
exec [dbo].[Proc]
@languageID =1,
@company_typeID =4,
@company_name =N'Company Name'
Set ANSI_PADDING OFF
在我的 post-部署脚本文件中,我正在执行最初在 db 项目本身中创建的存储过程:
数据库项目:
但是每当我发布 db 项目时,我都会收到以下错误
Procedure st_company_register, Line 56536 INSERT failed because the following SET options have incorrect settings: 'ANSI_PADDING'. Verify that SET options are correct for use with indexed views and/or indexes on computed columns and/or filtered indexes and/or query notifications and/or XML data type methods and/or spatial index operations.
程序如下:
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'
这是我的数据库项目设置,其中有 ANSI_PADDING:
有什么想法吗?
要在 post 部署脚本 中执行存储过程 时避免此问题,只需使用 Set [=17] 包装执行语句=] ON 如下:
Set ANSI_PADDING ON
exec [dbo].[Proc]
@languageID =1,
@company_typeID =4,
@company_name =N'Company Name'
Set ANSI_PADDING OFF