The new features for application developers provide additional flexibility in application design and make it easier to migrate existing applications that run against non-Ingres database architectures.
Ingres has a sequence facility that provides the ability, through SQL, to create a column in a table that contains a sequentially incremented number for each row.
Users can define a named sequence generator by using a CREATE SEQUENCE statement. The sequence generator can produce values in any context that requires a scalar value using the phrase next value for <sequence name> or <sequence name>.nextval. The sequence generator can be used in the values list of an INSERT statement, in the select list of a query, or anywhere that a scalar numeric value is required.
The sequence facility allows sequences to be defined as integer or decimal values. Ingres permits sequences to be decimal(31), which supports a range of +/- 10**32.
Use the ALTER SEQUENCE statement to change the parameter settings for a sequence generator and the DROP SEQUENCE statement to delete a sequence generator.
For more information, see the SQL Reference Guide.
Ingres uses a value of NO WAIT for the timeout parameter in the SET LOCKMODE statement to indicate that when a lock request that is made that cannot be granted without incurring a wait, control is immediately returned to the application that issued the request. NO WAIT applies to any lock in a transaction or a lock on one or more specific tables. For more information, see the SQL Reference Guide and Database Administrator Guide.
Ingres 2006 supports the bigint and tinyint data types.
The bigint numeric data type stores 64-bit integers. The bigint data type is an implementation of the ANSI standard bigint. Integer8, Int8, and i8 are synonyms for this data type.
The int8 function converts the specified expression, which can be a c, char, varchar, nchar, nvarchar, text, float, money, decimal, integer1, smallint, to a 64-bit integer. Decimal and floating-point values are truncated. Numeric overflow occurs if the integer portion of a floating-point or decimal value is too large to be returned in the requested format.
The tinyint numeric data type is a synonym for i1. Supported values are from -128 to +127.
For more information on new data types, see the SQL Reference Guide.