Cenni preliminari sull'utilizzo di oggetti di database
Aggiornamento: novembre 2007
Gli Oggetti di database definiscono la struttura del contenuto del database. Sono contenuti in un progetto di database che include anche piani di generazione dati e script. In Esplora soluzioni gli oggetti di database sono definiti in file e raggruppati per tipo nella sottocartella Oggetti dello schema all'interno del progetto di database. Quando si utilizzano oggetti di database, può risultare più intuitivo utilizzare la visualizzazione degli oggetti di database denominata Visualizzazione schema. Nella finestra Visualizzazione schema gli oggetti di database sono visualizzati per categoria. Un file nel progetto di database viene analizzato per individuare una definizione dell'oggetto di database se è contrassegnato con Build TypeGenera. I file del progetto di database il cui Build Type è diverso non vengono trattati, poiché contengono oggetti di database non visualizzati nella finestra Visualizzazione schema.
Esplora soluzioni
In Esplora soluzioni si eseguono operazioni sui file contenuti nel progetto. È possibile eseguire l'azione seguente sulle sottocartelle all'interno della sottocartella Oggetti dello schemain Esplora soluzioni:
- Aggiungi: aggiunge un elemento di un tipo specificato nel percorso appropriato nella gerarchia del progetto di database.
È possibile eseguire le azioni seguenti su tutti i file all'interno delle sottocartelle in Esplora soluzioni:
Apri: apre il file nell'Editor T-SQL (Transact-SQL).
Taglia: copia il file negli Appunti e lo rimuove dal progetto di database.
Copia: copia il file negli Appunti.
Elimina: rimuove definitivamente il file dal progetto di database.
Rinomina: rinomina il file selezionato.
Visualizza oggetto nella visualizzazione schema: seleziona nella finestra Visualizzazione schema l'oggetto contenuto nel file selezionato. Se non è già visualizzata, verrà visualizzata la finestra Visualizzazione schema.
Proprietà: visualizza la finestra Proprietà in cui sono elencate le proprietà del file.
È possibile eseguire azioni aggiuntive su alcuni tipi di oggetto, a seconda del tipo di oggetto.
Visualizzazione schema
Nella finestra Visualizzazione schema, si eseguono operazioni sugli oggetti di database. È possibile eseguire le azioni seguenti sulle sottocartelle all'interno della sottocartella Oggetti dello schemanella finestra Visualizzazione schema:
- Aggiungi: aggiunge un oggetto di un tipo specificato nel percorso appropriato nella gerarchia del progetto di database.
È possibile eseguire le azioni seguenti su tutti gli oggetti di database all'interno delle sottocartelle:
Apri: apre la definizione dell'oggetto nell'Editor T-SQL.
Taglia: copia l'oggetto negli Appunti e lo rimuove dal progetto di database.
Copia: copia l'oggetto negli Appunti.
Elimina: rimuove l'elemento dal progetto di database.
Effettua refactoring: Rinomina: rinomina l'elemento selezionato e le relative dipendenze in base ai principi del refactoring del database.
Proprietà: visualizza la finestra Proprietà in cui sono elencate le proprietà dell'oggetto.
Risoluzione dei nomi degli oggetti
In generale, i nomi degli oggetti devono essere risolti utilizzando le stesse regole adottate per SQL Server. Per risolvere correttamente alcuni sysobjects, potrebbero essere necessari nomi completi. Se si ricevono messaggi di errore o si nota un comportamento imprevisto nei casi che riguardano nomi di oggetti non completi, è necessario convertirli in nomi completi per tentare di risolvere il problema.
Riferimenti al nome del database nelle definizioni di oggetti
È possibile utilizzare il token $(databasename) negli script di definizione oggetto nei progetti di database. Si applicano le restrizioni seguenti:
È necessario racchiudere il token tra parentesi quadre, come illustrato nell'esempio seguente:
[$(databasename)]
Non è possibile utilizzare il token per specificare un nome a tre parti, come illustrato nell'esempio seguente:
[$(databasename)].[dbo].[Table1]
Nell'esempio seguente viene illustrato come utilizzare il token del nome $(database) in una stored procedure:
CREATE PROCEDURE [dbo].[MyProcedure]
@param1 INT = 0,
@param2 INT
AS
ALTER DATABASE [$(databasename)]
MODIFY FILEGROUP [FileGroup1] DEFAULT
RETURN 0
Opzioni SET a livello di oggetto
Oltre alle opzioni SET che è possibile impostare per il progetto di database, è anche possibile specificare valori per due opzioni relative a singoli oggetti di database. Tali opzioni sono Null ANSI e Identificatore tra virgolette. Quando si crea un oggetto di database, per impostazione predefinita, le opzioni SET per tale oggetto corrispondono alle opzioni SET del progetto di database. È possibile impostare queste due opzioni su uno dei tre valori seguenti: Impostazioni predefinite progetto, On o Off. Quando si genera il progetto di database, solo le opzioni SET a livello di oggetto impostate su un valore diverso dall'impostazione predefinita del progetto vengono inserite nello script di generazione.
Nota: |
---|
Quando si utilizzano i comandi Importa script o Importa schema database, i valori delle opzioni SET non vengono importati per i singoli oggetti del database. È necessario impostarli nella finestra Proprietà. Per ulteriori informazioni, vedere Procedura: specificare opzioni SET a livello di oggetto. |
Convalida di oggetti di database
La convalida viene effettuata quando si salvano le modifiche in un oggetto di database nuovo o modificato. Eventuali errori nella definizione dell'oggetto vengono visualizzati nella finestra Elenco errori. Se si fa doppio clic sul messaggio di errore, verrà visualizzata la definizione dell'oggetto per consentire di correggere l'errore. Sulle icone degli oggetti di database che contengono errori è visualizzato un punto esclamativo rosso nella finestra Visualizzazione schema.
Nota: |
---|
Sulle icone degli oggetti di database che non sono ancora supportati è visualizzato un triangolo giallo rovesciato. |
Per ulteriori informazioni su come risolvere i problemi relativi agli oggetti di database, vedere Risoluzione dei problemi relativi al progetto di database, alla compilazione e alla distribuzione.
Tipi di oggetti dello schema nella finestra Visualizzazione schema
Il progetto di database contiene le definizioni per tutti gli oggetti nello schema di database. L'elenco specifico di tipi di oggetti e le azioni che è possibile eseguire su di essi dipendono dalla versione di Microsoft SQL Server in esecuzione.
Tipo di oggetto |
SQL Server 2000 |
SQL Server 2005 |
---|---|---|
Tabelle |
Supportato |
Supportato |
Viste |
Supportato |
Supportato |
Sinonimi |
|
Supportato |
Stored Procedure |
Supportato |
Supportato |
Funzioni |
Supportato |
Supportato |
Trigger database |
|
Supportato |
Assembly |
|
Supportato |
Tipi: tipi di dati definiti dall'utente |
Supportato |
Supportato |
Tipi: tipi definiti dall'utente (CLR) |
|
Supportato |
Tipi: insiemi di schemi XML |
|
Supportato |
Service Broker |
|
Supportato |
Service Broker: tipi di messaggio |
|
Supportato |
Service Broker: contratti |
|
Supportato |
Service Broker: code |
|
Supportato |
Service Broker: servizi |
|
Supportato |
Service Broker: route |
|
Supportato |
Service Broker: notifiche eventi |
|
Supportato |
Service Broker: associazione a servizio remoto |
|
Supportato |
Archiviazione: cataloghi full-text |
Supportato |
Supportato |
Archiviazione: schemi di partizione |
|
Supportato |
Archiviazione: funzioni di partizione |
|
Supportato |
Archiviazione: gruppi di file |
Supportato |
Supportato |
Sicurezza |
Supportato |
Supportato |
Sicurezza: utenti |
Supportato |
Supportato |
Sicurezza: ruoli |
Supportato |
Supportato |
Sicurezza: ruoli: ruoli di database |
Supportato |
Supportato |
Sicurezza: ruoli: ruoli di applicazione |
Supportato |
Supportato |
Sicurezza: schemi |
Supportato |
Supportato |
Oggetti orfani
La cartella Oggetti orfani nella finestra Visualizzazione schema è un percorso temporaneo per gli oggetti associati ad altri oggetti non attualmente definiti nel progetto. Se ad esempio si crea un indice in una tabella, ma la tabella non è presente o non è attualmente valida, tale indice verrà visualizzato nella cartella Oggetti orfani. Quando viene creato (o diventa valido) l'oggetto padre, l'oggetto figlio viene visualizzato nel percorso corretto nel progetto.
Argomenti della sezione
Procedura: importare oggetti di database da uno script
Viene illustrato come importare una definizione di database da script T-SQL esistenti già disponibili.Procedura: visualizzare oggetti di database
Viene illustrato come visualizzare Visualizzazione schema, che mostra il contenuto del progetto di database organizzato per oggetto anziché per file.Procedura: creare un oggetto di database
Viene spiegato come creare oggetti di database, ad esempio tabelle, viste e stored procedure.Procedura: aggiungere oggetti di database a uno schema specifico
Vengono descritti i vantaggi e gli svantaggi dei tre approcci che è possibile utilizzare per aggiungere un oggetto di database a uno schema specifico.Procedura: modificare gli oggetti di database
Viene spiegato come modificare le definizioni di oggetti di database, ad esempio tabelle, viste e stored procedure.Procedura: eliminare oggetti di database
Viene spiegato come eliminare oggetti di database dal progetto di database.Procedura: aggiungere un utente a un ruolo
Viene illustrato come associare un utente del database a un ruolo nello script post-distribuzione.Procedura: definire cataloghi full-text
Viene illustrato come definire cataloghi full-text su un particolare gruppo di file.Procedura: specificare opzioni SET a livello di oggetto
Viene illustrato come impostare le opzioni Null ANSI e Identificatori tra virgolette per i singoli oggetti di database in modo che venga eseguito l'override delle impostazioni del progetto di database.Cenni preliminari sui modelli per gli oggetti di database
Vengono fornite informazioni di base sui modelli utilizzabili per creare oggetti di database e script di database.
Vedere anche
Concetti
Panoramica sulla terminologia di Database Edition
Altre risorse
Ridenominazione di oggetti di database
Guida introduttiva ai progetti di database
Generazione e distribuzione di schemi di database
Utilizzo di script di database
Procedure dettagliate (creazione e aggiornamento di schemi di database con controllo delle versioni)