Как отключить цитируемые идентификаторы при сценарии объектов базы данных SQL Server в Visual Studio?

StackOverflow https://stackoverflow.com/questions/3529296

Вопрос

Я использую Visual Studio 2005, чтобы скрепить базу данных, чтобы я мог поместить ее в подрывной деятельности. Теперь одна жалоба, которая у меня есть, заключается в том, что она помещает мою код сохраненной процедуры в одну буквальную строку, как в примере. ниже.

/****** Object:  StoredProcedure [dbo].[MyStoredProc]    Script Date: 08/19/2010 16:40:14 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MyStoredProc]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
BEGIN
EXEC dbo.sp_executesql @statement = N'
CREATE   PROCEDURE [dbo].[MyStoredProc]

-- My T-SQL code here

END' 
END
GO

Мне это не нравится, потому что тогда выделение синтаксиса бесполезно. Есть ли в любом случае, что я могу отключить это поведение, т.е. так, чтобы оно удаляло

EXEC dbo.sp_executesql @statement = N'

часть?

Какова мотивация для этого в первую очередь? Цитирование строки всегда была темой, которая является моей слепой точкой, поэтому я уверен, что не знаю обо всех последствиях. Я мог бы больше принимать такое поведение, если я понял, для чего оно.

Спасибо

Это было полезно?

Решение

SQL Server Management Studio Scripts Out в качестве выполнения SQL, если вы выберете опцию

Включите, если не существует

Если вы снимаете, что сценарий генерируется так, как вы ищете.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top