Condividi tramite


Procedura dettagliata: modificare gli oggetti di database

Aggiornamento: novembre 2007

In questa procedura dettagliata viene illustrato come utilizzare l'Editor T-SQL (Transact-SQL) per modificare le definizioni di numerosi oggetti di database nel progetto di database. Questo processo è costituito dai passaggi seguenti:

  • Aprire una soluzione che contiene un progetto di database.

  • Aggiungere una colonna a una tabella. Un cliente desidera individuare in quale anno sono stati introdotti i prodotti. Per eseguire questo passaggio, aggiungere una colonna DateAdded alla tabella Products.

  • Aggiungere una tabella, denominata ShipperRating, per tenere traccia delle considerazioni dei clienti sulla qualità del servizio dei corrieri che gestiscono gli ordini. Aggiungere inoltre relazioni di chiavi esterne e un indice.

Prerequisiti

In questa procedura dettagliata, si presuppone che sia stata completata la procedura descritta in Procedura dettagliata: includere uno schema di database esistente nel controllo delle versioni. Come risultato di tale procedura dettagliata, si dispone di una soluzione che contiene un progetto di database denominato MyNorthwind.

Per aprire la soluzione MyNorthwind

  1. Scegliere Apri dal menu File e quindi Progetto/Soluzione.

    Verrà visualizzata la finestra di dialogo Apri progetto.

  2. Aprire la cartella MyNorthwind e fare doppio clic su MyNorthwind.sln.

    La soluzione MyNorthwind verrà aperta e visualizzata in Esplora soluzioni.

  3. Scegliere Visualizzazione schema dal menu Visualizza.

    Se non è già visualizzata, verrà visualizzata la finestra Visualizzazione schema. In questa finestra vengono visualizzati tutti gli oggetti definiti nel progetto di database.

  4. Se non è ancora espanso, espandere il nodo del progetto di database nella finestra Visualizzazione schema.

    Modificare quindi una definizione di tabella per aggiungere una colonna a una tabella.

Per aggiungere una colonna DateAdded alla tabella Products

  1. Nella finestra Visualizzazione schema fare clic con il pulsante destro del mouse sulla tabella Products, quindi scegliere Apri. È inoltre possibile fare doppio clic sulla tabella Products.

    Verrà aperto l'Editor T-SQL e verrà visualizzata la definizione della tabella Products.

  2. Nell'Editor T-SQL modificare la definizione per aggiungere la colonna DateAdded, come illustrato nell'esempio seguente:

    CREATE TABLE [dbo].[Products]
    (
    [ProductID] [int] NOT NULL IDENTITY(1, 1),
    [ProductName] [nvarchar] (40) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL,
    [SupplierID] [int] NULL,
    [CategoryID] [int] NULL,
    [QuantityPerUnit] [nvarchar] (20) COLLATE SQL_Latin1_General_CP1_CS_AS NULL,
    [UnitPrice] [money] NULL CONSTRAINT [DF_Products_UnitPrice] DEFAULT (0),
    [UnitsInStock] [smallint] NULL CONSTRAINT [DF_Products_UnitsInStock] DEFAULT (0),
    [UnitsOnOrder] [smallint] NULL CONSTRAINT [DF_Products_UnitsOnOrder] DEFAULT (0),
    [ReorderLevel] [smallint] NULL CONSTRAINT [DF_Products_ReorderLevel] DEFAULT (0),
    [Discontinued] [bit] NOT NULL CONSTRAINT [DF_Products_Discontinued] DEFAULT (0),
    [DateAdded] [datetime] NULL
    ) ON [PRIMARY]
    
  3. Scegliere Salva dbo.Products dal menu File per salvare le modifiche.

    Per impostazione predefinita, il file viene automaticamente estratto dal controllo del codice sorgente. Se sono state modificate le impostazioni di controllo del codice sorgente, verrà chiesto di estrarre il file.

    Aggiungere quindi una tabella denominata ShipperRating al progetto di database.

Per aggiungere la tabella ShipperRating

  1. Nella finestra Visualizzazione schema fare clic sulla cartella Tabelle.

  2. Scegliere Aggiungi nuovo elemento dal menu Progetto. È inoltre possibile fare clic con il pulsante destro del mouse sulla cartella Tabelle, scegliere Aggiungi e quindi Tabella.

    Verrà visualizzata la finestra di dialogo Aggiungi nuovo elemento.

  3. Selezionare Tabella nell'elenco Modelli.

  4. In Nome digitare ShipperRating e quindi scegliere Aggiungi.

    La tabella ShipperRating verrà aggiunta al progetto di database e al controllo del codice sorgente. Verrà visualizzato l'Editor T-SQL che consente di modificare la definizione di questa tabella.

  5. Nell'Editor T-SQL modificare la definizione della tabella affinché corrisponda all'esempio seguente:

    -- =============================================
    -- Create table definition for ShipperRating 
    --Contains a rating of a shipper by
    --a customer, on a particular date.
    --Ratings are from 1-100.
    -- =============================================
    CREATE TABLE [dbo].[ShipperRating]
    (
    [ShipperID] [int] NOT NULL,
    [CustomerID] [nchar] (5) COLLATE SQL_Latin1_General_CP1_CS_AS NOT NULL,
    [RatingDate] [datetime] NULL,
    [Rating] [int] NOT NULL
    ) ON [PRIMARY]
    
  6. Scegliere Salva dbo.ShipperRating dal menu File per salvare le modifiche.

    Aggiungere quindi una chiave esterna alla tabella ShipperRating.

Per aggiungere una chiave esterna alla tabella ShipperRating

  1. Nella finestra Visualizzazione schema fare clic con il pulsante destro del mouse sulla tabella ShipperRating, scegliere Aggiungi e quindi Chiave esterna.

    Verrà visualizzata la finestra di dialogo Aggiungi nuovo elemento con il modello Chiave esterna già evidenziato.

  2. In Nome digitare FK_ShipperRating_Shippers e quindi scegliere Aggiungi.

    La chiave esterna FK_ShipperRating_Shippers verrà aggiunta alla tabella ShipperRating nel progetto. Verrà visualizzato l'Editor T-SQL che consente di modificare la definizione della chiave esterna.

    Nota:

    La definizione predefinita per la chiave esterna fa riferimento a colonna_1 in nometabella, anziché a una tabella e una colonna reali. Di conseguenza, nell'icona per FK_ShipperRating_Shippers nella finestra Visualizzazione schema verrà visualizzata l'icona di errore (cerchio rosso con una "x" bianca). Verrà inoltre visualizzato un errore nella finestra Elenco errori per indicare che è presente una definizione dell'oggetto di database non valida. Si tratta di un comportamento previsto. Per il file in Esplora soluzioni che contiene la definizione dell'oggetto non viene visualizzata un'icona di errore.

  3. Nell'Editor T-SQL modificare la definizione della chiave esterna affinché corrisponda all'esempio seguente:

    ALTER TABLE [dbo].[ShipperRating]
    ADD CONSTRAINT [FK_ShipperRating_Shippers] 
    FOREIGN KEY ([ShipperID])
    REFERENCES [dbo].[Shippers] ([ShipperID])
    
  4. Scegliere Salva dbo.FK_ShipperRating_Shippers dal menu File per salvare le modifiche. L'icona di errore verrà sostituita da un'icona normale di vincolo di chiave esterna poiché ora la definizione è valida.

    Nell'ultimo passaggio viene aggiunto un indice alla tabella ShipperRating.

Per aggiungere un indice alla tabella ShipperRating

  1. Nella finestra Visualizzazione schema fare clic sulla cartella Indici.

  2. Scegliere Aggiungi nuovo elemento dal menu Progetto. È inoltre possibile fare clic con il pulsante destro del mouse sulla cartella Indici, scegliere Aggiungi e quindi Indice.

  3. Se non è ancora evidenziato, selezionare Indice nell'elenco Modelli.

  4. In Nome digitare ShipperRatingDate e quindi scegliere Aggiungi.

    L'indice ShipperRatingDate verrà aggiunto alla tabella ShipperRating nel progetto. Verrà visualizzato l'Editor T-SQL che consente di modificare la definizione dell'indice.

    Nota:

    La definizione predefinita per l'indice fa riferimento a colonna_1, anziché a un nome di colonna reale. Di conseguenza, nell'icona per ShipperRatingDate in Esplora soluzioni verrà visualizzata l'icona di errore (cerchio rosso con una "x" bianca). Verrà inoltre visualizzato un errore nella finestra Elenco errori per indicare che è presente una definizione dell'oggetto di database non valida. Si tratta di un comportamento previsto.

  5. Nell'Editor T-SQL modificare la definizione dell'indice affinché corrisponda all'esempio seguente:

    -- =============================================
    -- Create index on RatingDate column in 
    --the ShipperRating table.
    -- =============================================
    CREATE INDEX [ShipperRatingDate]
    ON [dbo].[ShipperRating]
    (RatingDate)
    

    Scegliere Salva ShipperRatingDate dal menu File per salvare le modifiche. L'icona di errore verrà sostituita da un'icona normale di indice poiché ora la definizione è valida.

Per archiviare le modifiche nel controllo delle versioni

  1. In Esplora soluzioni fare clic sul database MyNorthwind.

  2. Scegliere Controllo del codice sorgente dal menu File e quindi Archivia.

  3. Archiviare i file attenendosi alle procedure per il plug-in di controllo del codice sorgente. Per ulteriori informazioni, vedere Utilizzo del controllo della versione di Team Foundation.

    Le modifiche al progetto di database vengono archiviate e sono disponibili per gli altri membri del team.

Passaggi successivi

Dopo aver modificato la rappresentazione non in linea di questo database, è necessario generare e distribuire le modifiche al server di database. Per generare e distribuire le modifiche, vedere Procedura dettagliata: distribuzione delle modifiche a un database esistente con controllo della versione.

Vedere anche

Attività

Procedura dettagliata: includere uno schema di database esistente nel controllo delle versioni

Procedura dettagliata: creazione e distribuzione di un nuovo database con controllo delle versioni

Concetti

Cenni preliminari sull'utilizzo di oggetti di database

Panoramica sulla terminologia di Database Edition

Altre risorse

Generazione e distribuzione di schemi di database