Come faccio a disattivare identificatori tra virgolette quando lo scripting fuori oggetti di database di SQL Server in Visual Studio?

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

Domanda

Sto usando Visual Studio 2005 per lo script un database in modo che posso metterlo in Subversion. Ora, uno lamentela che ho è che mette il mio codice stored procedure in una singola stringa letterale, come nell'esempio. sotto.

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

Non mi piace questo, perché allora l'evidenziazione della sintassi è inutile. C'è comunque che posso disattivare questo comportamento, vale a dire in modo che rimuove il

EXEC dbo.sp_executesql @statement = N'

parte?

Qual è la motivazione per fare in questo modo, in primo luogo? String citando è sempre stato un argomento che è un po 'un punto cieco di mine, quindi sono sicuro che non sono a conoscenza di tutte le implicazioni. Potrei essere più accettare di questo comportamento se ho capito quello che è per.

Grazie

È stato utile?

Soluzione

SQL Server Management Studio script come Esegui SQL se si seleziona l'opzione

Includere Se non esiste

Se si deseleziona che lo script viene generato, come si sta cercando.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top