Proprietà sequenza (pagina Generale)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

Crea un oggetto sequenza e ne specifica le proprietà. Una sequenza è un oggetto associato a schema definito dall'utente che genera una sequenza di valori numerici in base alla specifica con la quale è stata creata la sequenza. La sequenza di valori numerici viene generata in ordine crescente o decrescente a un intervallo definito e può essere configurata per riprendere dall'inizio (ciclo) quando è esaurita. Le sequenze, a differenza delle colonne Identity, non sono associate a tabelle specifiche. Le applicazioni fanno riferimento a un oggetto sequenza per recuperare il relativo valore successivo. La relazione tra sequenze e tabelle è controllata dall'applicazione. Le applicazioni utente possono fare riferimento a un oggetto sequenza e coordinare i valori di più righe e tabelle.

A differenza dei valori delle colonne Identity, generati al momento dell'inserimento, un'applicazione può ottenere il numero di sequenza successivo senza inserire la riga chiamando la funzione NEXT VALUE FOR. Usare sp_sequence_get_range per ottenere immediatamente più numeri di sequenza.

Per informazioni e scenari in cui vengono usate entrambe le funzioni CREATE SEQUENCE e NEXT VALUE FOR , vedere Numeri di sequenza.

È possibile accedere a questa pagina in due modi: facendo clic con il pulsante destro del mouse su Sequenze in Esplora oggetti e quindi scegliendo Nuova sequenzaoppure facendo clic con il pulsante destro del mouse su una sequenza esistente e quindi scegliendo Proprietà. In quest'ultimo caso le opzioni in Proprietànon possono essere modificate. Per cambiare le opzioni relative alle sequenze, usare l'istruzione ALTER SEQUENCE (Transact-SQL) oppure eliminare e ricreare l'oggetto sequenza.

Opzioni

Nome sequenza
Consente di immettere il nome della sequenza.

Schema sequenza
Consente di specificare lo schema che sarà proprietario della sequenza.

Tipo di dati
Una sequenza può essere definita come qualsiasi tipo Integer. Valuta gli ambiti seguenti:

Tipo di dati Intervallo
tinyint da 0 a 255
smallint Da -32.768 a 32.767
int Da -2.147.483.648 a 2.147.483.647
bigint Da -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807
  • decimal o numeric con scala 0.

  • Qualsiasi tipo di dati definito dall'utente (tipo di alias) basato su uno di questi tipi.

Precisione
Per i tipi di dati decimal o numeric specificare la precisione. (la scala è sempre 0).

Valore iniziale
Primo valore che verrà restituito dall'oggetto sequenza. Il valore START deve essere minore o uguale al valore massimo e maggiore o uguale al valore minimo dell'oggetto sequenza. Il valore iniziale predefinito per un nuovo oggetto sequenza è il valore minimo per un oggetto sequenza con ordine crescente e il valore massimo per un oggetto sequenza con ordine decrescente.

Incremento di
Valore usato per incrementare (o decrementare, in caso di valore negativo) il valore dell'oggetto sequenza per ogni chiamata alla funzione NEXT VALUE FOR . Se l'incremento è un valore negativo, l'oggetto sequenza ha un ordine decrescente, in caso contrario avrà un ordine crescente. L'incremento non può essere 0.

Valore minimo
Specifica i limiti per l'oggetto sequenza. Il valore minimo predefinito per un nuovo oggetto sequenza è il valore minimo del tipo di dati dell'oggetto sequenza. Tale valore è zero per il tipo di dati tinyint e un numero negativo per tutti gli altri tipi di dati.

Valore massimo
Specifica i limiti per l'oggetto sequenza. Il valore massimo predefinito per un nuovo oggetto sequenza è il valore massimo del tipo di dati dell'oggetto sequenza.

Riavvio sequenza ciclica al raggiungimento del limite
Selezionare questa opzione per consentire il riavvio dell'oggetto sequenza dal valore minimo (o massimo per gli oggetti sequenza con ordine decrescente) quando viene superato il valore minimo o massimo.

Nota

Il ciclo non ricomincia dal valore iniziale, bensì dal valore minimo/massimo.

Opzioni cache
La creazione di una cache di valori di sequenza può favorire un miglioramento delle prestazioni per applicazioni in cui vengono utilizzati oggetti sequenza, riducendo il numero di I/O su disco necessari per creare numeri di sequenza.

  • Dimensioni cache predefinite: nel motore di database vengono selezionate dimensioni specifiche, che tuttavia non devono necessariamente essere considerate coerenti. Microsoft potrebbe cambiare il metodo di calcolo della dimensione della cache senza preavviso.

  • Nessuna cache: SQL Server non memorizza i numeri di sequenza nella cache.

  • Memorizzazione nella cache con dimensione: SQL Server memorizza i numeri di sequenza nella cache. SQL Server tiene traccia del valore corrente e del numero di valori rimasti nella cache. La quantità di memoria richiesta per l'archiviazione della cache è pertanto sempre corrispondente a due istanze del tipo di dati dell'oggetto sequenza.

In caso di creazione con l'opzione CACHE, un arresto imprevisto quale un'interruzione dell'alimentazione, può provocare la perdita dei numeri di sequenza nella cache.

Per informazioni aggiuntive sulle opzioni di creazione di una sequenza, vedere CREATE SEQUENCE (Transact-SQL).

Autorizzazioni

Richiede l'autorizzazione CREATE SEQUENCE, ALTERo CONTROL per l'oggetto SCHEMA.

Vedere anche

sys.sequences (Transact-SQL)