DataFieldMaxValueIncrementer that increments the maximum counter value of an
auto-increment column of a given MySQL table.
The sequence is kept in a table. The storage engine used by the sequence table must be InnoDB in MySQL 8.0 or later since the current maximum auto-increment counter is required to be persisted across restarts of the database server.
Example:
create table tab_sequence (`id` bigint unsigned primary key auto_increment);
If cacheSize is set, the intermediate values are served without querying the
database. If the server or your application is stopped or crashes or a transaction
is rolled back, the unused values will never be served. The maximum hole size in
numbering is consequently the value of cacheSize.
| Access | Constructor and Description |
|---|---|
| public | |
| public | MySQLIdentityColumnMaxValueIncrementer(DataSource
the DataSource to use dataSource, String the name of the sequence table to use incrementerName, String the name of the column in the sequence table to use columnName)Convenience constructor. |
| Modifier and Type | Method and Description |
|---|---|
| protected String | getIdentityStatement()
Implements abstract org. Statement to use to obtain the current identity value. |
| protected String | getIncrementStatement()
Implements abstract org. Statement to use to increment the "sequence" value. |
| MySQLIdentityColumnMaxValueIncrementer | back to summary |
|---|---|
| public MySQLIdentityColumnMaxValueIncrementer() Default constructor for bean property style usage.
| |
| MySQLIdentityColumnMaxValueIncrementer | back to summary |
|---|---|
| public MySQLIdentityColumnMaxValueIncrementer(DataSource dataSource, String incrementerName, String columnName) Convenience constructor.
| |
| getIdentityStatement | back to summary |
|---|---|
| protected String getIdentityStatement() Implements abstract org. Statement to use to obtain the current identity value. | |
| getIncrementStatement | back to summary |
|---|---|
| protected String getIncrementStatement() Implements abstract org. Statement to use to increment the "sequence" value. | |