Proprietà sequenza (pagina Generale)Sequence Properties (General Page)

Crea un oggetto sequenza e ne specifica le proprietà.Creates a sequence object and specifies its properties. 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.A sequence is a user-defined schema bound object that generates a sequence of numeric values according to the specification with which the sequence was created. 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.The sequence of numeric values is generated in an ascending or descending order at a defined interval and can be configured to restart (cycle) when exhausted. Le sequenze, a differenza delle colonne Identity, non sono associate a tabelle specifiche.Sequences, unlike identity columns, are not associated with specific tables. Le applicazioni fanno riferimento a un oggetto sequenza per recuperare il relativo valore successivo.Applications refer to a sequence object to retrieve its next value. La relazione tra sequenze e tabelle è controllata dall'applicazione.The relationship between sequences and tables is controlled by the application. Le applicazioni utente possono fare riferimento a un oggetto sequenza e coordinare i valori di più righe e tabelle.User applications can reference a sequence object and coordinate the values across multiple rows and tables.

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.Unlike identity columns values which are generated at the time of insert, an application can obtain the next sequence number without inserting the row by calling the NEXT VALUE FOR function. Usare sp_sequence_get_range per ottenere immediatamente più numeri di sequenza.Use sp_sequence_get_range to get multiple sequence numbers at once.

Per informazioni e scenari in cui vengono usate entrambe le funzioni CREATE SEQUENCE e NEXT VALUE FOR , vedere Numeri di sequenza.For information and scenarios that use both CREATE SEQUENCE and the NEXT VALUE FOR function, see Sequence Numbers.

È 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à.This page is accessed in two ways: either by right-clicking Sequences in Object Explorer and clicking New Sequence, or by right-clicking an existing sequence and clicking Properties. In quest'ultimo caso le opzioni in Proprietà non possono essere modificate.When you right-click an existing sequence and click Properties, the options are not editable. Per modificare le opzioni relative alle sequenze, usare l'istruzione ALTER SEQUENCE (Transact-SQL) oppure eliminare e ricreare l'oggetto sequenza.To change the sequence options use the ALTER SEQUENCE (Transact-SQL) statement or drop and recreate the sequence object.

OpzioniOptions

Nome sequenzaSequence name
Consente di immettere il nome della sequenza.Enter the sequence name here.

Schema sequenzaSequence schema
Consente di specificare lo schema che sarà proprietario della sequenza.Specify the schema that will own this sequence.

Tipo di datiData type
Una sequenza può essere definita come qualsiasi tipo Integer.A sequence can be defined as any integer type. ad esempio:This includes:

Tipo di datiData type IntervalloRange
tinyinttinyint da 0 a 2550 to 255
smallintsmallint Da -32.768 a 32.767-32,768 to 32,767
intint Da -2.147.483.648 a 2.147.483.647-2,147,483,648 to 2,147,483,647
bigintbigint Da -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
  • decimal o numeric con scala 0.decimal or numeric with a scale of 0.

  • Qualsiasi tipo di dati definito dall'utente (tipo di alias) basato su uno di questi tipi.Any user-defined data type (alias type) that is based on one of these types.

    PrecisionePrecision
    Per i tipi di dati decimal o numeric specificare la precisione.For decimal or numeric data types, specify the precision. (la scala è sempre 0).(The scale is always 0.)

    Valore inizialeStart with value
    Primo valore che verrà restituito dall'oggetto sequenza.The first value that will be returned by the sequence object. Il valore START deve essere minore o uguale al valore massimo e maggiore o uguale al valore minimo dell'oggetto sequenza.The START value must be a value that is less than or equal to the maximum and greater than or equal to the minimum value of the sequence object. 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.The default start value for a new sequence object is the minimum value for an ascending sequence object and the maximum value for a descending sequence object.

    Incremento diIncrement by
    Valore usato per incrementare (o decrementare, in caso di valore negativo) il valore dell'oggetto sequenza per ogni chiamata alla funzione NEXT VALUE FOR .The value that is used to increment (or decrement if negative) the value of the sequence object for each call to the NEXT VALUE FOR function. Se l'incremento è un valore negativo, l'oggetto sequenza ha un ordine decrescente, in caso contrario avrà un ordine crescente.If the increment is a negative value the sequence object is descending, otherwise, it is ascending. L'incremento non può essere 0.The increment cannot be 0.

    Valore minimoMinimum value
    Specifica i limiti per l'oggetto sequenza.Specifies the bounds for sequence object. Il valore minimo predefinito per un nuovo oggetto sequenza è il valore minimo del tipo di dati dell'oggetto sequenza.The default minimum value for a new sequence object is the minimum value of the data type of the sequence object. Tale valore è zero per il tipo di dati tinyint e un numero negativo per tutti gli altri tipi di dati.This is zero for the tinyint data type and a negative number for all other data types.

    Valore massimoMaximum value
    Specifica i limiti per l'oggetto sequenza.Specifies the bounds for sequence object. Il valore massimo predefinito per un nuovo oggetto sequenza è il valore massimo del tipo di dati dell'oggetto sequenza.The default maximum value for a new sequence object is the maximum value of the data type of the sequence object.

    Riavvio sequenza ciclica al raggiungimento del limiteCycle-sequence will restart on reaching limit
    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.Select to allow the sequence object to restart from the minimum value (or maximum for descending sequence objects) when its minimum or maximum value is exceeded.

Nota

Il ciclo non ricomincia dal valore iniziale, bensì dal valore minimo/massimo.Cycling does not restart from the start value but rather from the minimum/maximum value.

Opzioni cacheCache options
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.Creating a cache of sequence values can increase performance for applications that use sequence objects by minimizing the number of disk IOs that are required to create sequence numbers.

  • Dimensioni cache predefinite: nel Motore di databaseDatabase Engine vengono selezionate dimensioni specifiche, che tuttavia non devono necessariamente essere considerate coerenti.Default cache size - The Motore di databaseDatabase Engine will select a size, however users should not rely upon the selection being consistent. MicrosoftMicrosoft potrebbe cambiare il metodo di calcolo della dimensione della cache senza preavviso. might change the method of calculating the cache size without notice.

  • Nessuna cache: in SQL ServerSQL Server i numeri di sequenza non vengono memorizzati nella cache.No cache - SQL ServerSQL Server will not cache sequence numbers.

  • Memorizzazione nella cache con dimensione: in SQL ServerSQL Server vengono memorizzati nella cache i valori di sequenza.Cache with size - SQL ServerSQL Server will cache sequence values. SQL ServerSQL Server consente di tenere traccia del valore corrente e del numero di valori rimasti nella cache. keeps track of the current value and the number of values left in the cache. La quantità di memoria richiesta per l'archiviazione della cache è pertanto sempre corrispondente a due istanze del tipo di dati dell'oggetto sequenza.Therefore, the amount of memory that is required to store the cache is always two instances of the data type of the sequence object

    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.When created with the CACHE option, an unexpected shutdown, such as a power failure, can lose the sequence numbers in the cache.

    Per informazioni aggiuntive sulle opzioni di creazione di una sequenza, vedere CREATE SEQUENCE (Transact-SQL).For additional information about the create sequence options, see CREATE SEQUENCE (Transact-SQL).

AutorizzazioniPermissions

Richiede l'autorizzazione CREATE SEQUENCE, ALTERo CONTROL per l'oggetto SCHEMA.Requires CREATE SEQUENCE, ALTER, or CONTROL permission on the SCHEMA.

Vedere ancheSee Also

sys.sequences (Transact-SQL)sys.sequences (Transact-SQL)