2013-10-15 10 views
5

Secondo fonti multiple Microsoft, SQL Server Administration Blog | zarez.net aggiungere commenti a SQL e farlo con SSMS è un gioco da ragazzi. E per la maggior parte hanno probabilmente ragione. Ma quando accedo e creo una vista non riesco a lasciare commenti in essa.Come si lasciano i commenti nella vista di SQL Server 2008 R2 con SSMS?

Se si utilizzano due trattini (-) i commenti vengono cancellati quando si salva la vista, non importa se la sto creando da zero o aggiornando una vista che ho creato qualche tempo fa.

Se provo l'Edit -> Advanced -> Click ‘Comment Selection’ l'opzione Advanced non è visualizzata (vedi schermata)

enter image description here

Mi manca qualcosa o è solo impossibile lasciare commenti in una vista di SQL Server?

risposta

18

Interrompere l'utilizzo del progettista della vista goffo e buggato.

Per una nuova vista, è sufficiente aprire una nuova finestra di query e iniziare a digitare. Ciò funzionerà correttamente:

USE MyDatabase; 
GO 

CREATE VIEW dbo.MyView 
AS 
    -- this view is cool 
    SELECT whatever FROM dbo.wherever; 

Per una vista esistente, fare clic con il pulsante destro del mouse sulla vista e scegliere Script come> Alter. Questo ti darà un'esperienza molto migliore (meno la possibilità di selezionare e deselezionare colonne ecc.).

enter image description here

Le varie visual designer possono guardare come si risparmia tempo (e le intenzioni erano certamente buone), ma l'implementazione è terribile, ci sono tutti i tipi di bug e limitazioni, e che realmente rifugio Sono stati migliorati o persino toccati da anni.

+0

Per rispondere alla domanda originale, è possibile aggiungere commenti seguendo il metodo di Aaron per modificarlo nel codice. Va sottolineato che i commenti devono essere accanto al codice "ALTER VIEW" o che non saranno salvati. I commenti possono essere prima, intercalati o dopo il codice (ma tra le istruzioni "GO" allegate). Se in seguito si modifica e si salva la vista utilizzando il designer, i commenti verranno comunque salvati. Tuttavia, saranno raggruppati prima della riga ALTER VIEW la volta successiva in cui si utilizza l'approccio Script As. Non sembra esserci alcun modo per visualizzarli/modificarli nel designer. – Hamp

9

Quando si creano oggetti di database ci sono due posizioni in cui è possibile memorizzare i commenti. Prima della definizione dell'oggetto (e dopo qualsiasi istruzione GO) e all'interno dell'oggetto stesso.

USE GODUCKS; 
-- This comment will not be preserved 
GO 
-- This comment precedes the view definition 
-- This too 
CREATE VIEW dbo.CommentedView 
AS 
    -- This comment lives inside the view 
    SELECT 1 AS MyColumn; 

Premere F5 e quindi eseguire nuovamente la visualizzazione della vista. Puoi vedere dove i commenti sono/non sono stati conservati.

USE [GODUCKS] 
GO 

/****** Object: View [dbo].[CommentedView] Script Date: 10/15/2013 8:12:49 AM ******/ 
SET ANSI_NULLS ON 
GO 

SET QUOTED_IDENTIFIER ON 
GO 

-- This comment precedes the view definition 
-- This too 
CREATE VIEW [dbo].[CommentedView] 
AS 
    -- This comment lives inside the view 
    SELECT 1 AS MyColumn; 

GO 
+3

Puoi mettere i commenti prima dell'istruzione 'CREATE VIEW', ma non so perché vorresti - rende i commenti molto più facili da perdere se qualcuno copia e incolla la definizione della vista ... –

+1

Questo è stato molto utile, ma @AaronBertrand ha riconfermato che il mio più grande ostacolo era la scelta dello spettatore, quindi ho accolto la sua risposta. La tua risposta è ancora valida e affronta bene la domanda più ampia. –