Comment puis-je désactiver les identificateurs entre guillemets lorsque les scripts des objets de base de données SQL Server dans Visual Studio?

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

Question

J'utilise Visual Studio 2005 pour scripter une base de données afin que je puisse le mettre dans la subversion. Maintenant, on reproche que je ferais est que cela met mon code de procédure stockée dans une seule chaîne littérale, comme dans l'exemple. au dessous de.

/****** 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

Je ne aime pas parce que alors la coloration syntaxique est inutile. Y at-il de toute façon que je peux désactiver ce comportement, à savoir de sorte qu'il supprime le

EXEC dbo.sp_executesql @statement = N'

partie?

Quelle est la motivation pour le faire de cette façon, en premier lieu? Chaîne citant a toujours été un sujet qui est un peu d'un blindspot de mes donc je suis sûr que je ne suis pas au courant de toutes les implications. Je pourrais mieux accepter ce comportement si je compris ce qu'il est pour.

Merci

Était-ce utile?

La solution

scripts SQL Server Management Studio sur Exécuter en tant que SQL si vous sélectionnez l'option

Inclure Si Non Exists

Si vous décochez que le script est généré que vous recherchez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top