sys.sequences (Transact-SQL)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance

Contains a row for each sequence object in a database.

Column name Data type Description
<inherited columns> Inherits all columns from sys.objects.
start_value sql_variant NOT NULL The starting value for the sequence object. If the sequence object is restarted by using ALTER SEQUENCE it will restart at this value. When the sequence object cycles it proceeds to the minimum_value or maximum_value, not the start_value.
increment sql_variant NOT NULL The value that is used to increment the sequence object after each generated value.
minimum_value sql_variant NULL The minimum value that can be generated by the sequence object. After this value is reached, the sequence object will either return an error when trying to generate more values or restart if the CYCLE option is specified. If no MINVALUE has been specified, this column returns the minimum value supported by the sequence generator's data type.
maximum_value sql_variant NULL The maximum value that can be generated by the sequence object. After this value is reached the sequence object will either start returning an error when trying to generate more values or restart if the CYCLE option is specified. If no MAXVALUE has been specified this column returns the maximum value supported by the sequence object's data type.
is_cycling bit NOT NULL Returns 0 if NO CYCLE has been specified for the sequence object and 1 if CYCLE has been specified.
is_cached bit NOT NULL Returns 0 if NO CACHE has been specified for the sequence object and 1 if CACHE has been specified.
cache_size int NULL Returns the specified cache size for the sequence object. This column contains NULL if the sequence was created with the NO CACHE option or if CACHE was specified without specifying a cache size. If the value specified by the cache size is larger than the maximum number of values that can be returned by the sequence object, that unobtainable cache size is still displayed.
system_type_id tinyint NOT NULL ID of the system type for sequence object's data type.
user_type_id int NOT NULL ID of the data type for the sequence object as defined by the user.
precision tinyint NOT NULL Max precision of the data type.
scale tinyint NOT NULL Max scale of the type. Scale is returned together with precision to give users complete metadata. Scale is always 0 for sequence objects because only integer types are allowed.
current_value sql_variant NOT NULL The last value obligated. That is, the value returned from the most recent execution of the NEXT VALUE FOR function or the last value from executing the sp_sequence_get_range procedure. Returns the START WITH value if the sequence has never been used.
is_exhausted bit NOT NULL 0 indicates that more values can be generated from the sequence. 1 indicates that the sequence object has reached the MAXVALUE parameter and the sequence is not set to CYCLE. The NEXT VALUE FOR function returns an error until the sequence is restarted by using ALTER SEQUENCE.
last_used_value sql_variant NULL Returns the last value generated by the Next Value For function. Applies to SQL Server 2017 and later.

Permissions

In SQL Server 2005 (9.x) and later versions, the visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. For more information, see Metadata Visibility Configuration.

See Also

Sequence Numbers
CREATE SEQUENCE (Transact-SQL)
ALTER SEQUENCE (Transact-SQL)
DROP SEQUENCE (Transact-SQL)
NEXT VALUE FOR (Transact-SQL)
sp_sequence_get_range (Transact-SQL)