Class MariaDBSequenceSupport
- All Implemented Interfaces:
SequenceSupport
MariaDBDialect.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetCreateSequenceString(String sequenceName) Typically dialects which support sequences can create a sequence with a single command.getCreateSequenceString(String sequenceName, int initialValue, int incrementSize) Typically dialects which support sequences can create a sequence with a single command.getDropSequenceString(String sequenceName) Typically dialects which support sequences can drop a sequence with a single command.getSelectSequencePreviousValString(String sequenceName) Generate the select expression fragment that will retrieve the previous value of a sequence as part of another (typically DML) statement.booleanDo we need to explicitly specifyminvalueormaxvaluewhen the initial value doesn't have the same sign as the increment?Methods inherited from class org.hibernate.dialect.sequence.ANSISequenceSupport
getSelectSequenceNextValStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.dialect.sequence.SequenceSupport
getCreateSequenceStrings, getCreateSequenceStrings, getDropSequenceStrings, getFromDual, getSequenceNextValString, getSequenceNextValString, getSequencePreviousValString, startingValue, supportsPooledSequences, supportsSequences
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
MariaDBSequenceSupport
public MariaDBSequenceSupport()
-
-
Method Details
-
getCreateSequenceString
Description copied from interface:SequenceSupportTypically dialects which support sequences can create a sequence with a single command. This method is a convenience making it easier to implementSequenceSupport.getCreateSequenceStrings(String,int,int)for these dialects.The default definition is to return
create sequence sequenceNamefor the argumentsequenceName. Dialects need to override this method if a sequence created in this manner does not start at 1, or if the syntax is nonstandard.Dialects which support sequences and can create a sequence in a single command need *only* override this method. Dialects which support sequences but require multiple commands to create a sequence should override
SequenceSupport.getCreateSequenceStrings(String,int,int)instead.- Parameters:
sequenceName- The name of the sequence- Returns:
- The sequence creation command
- Throws:
MappingException- If sequences are not supported.
-
getCreateSequenceString
public String getCreateSequenceString(String sequenceName, int initialValue, int incrementSize) throws MappingException Description copied from interface:SequenceSupportTypically dialects which support sequences can create a sequence with a single command. This method is a convenience making it easier to implementSequenceSupport.getCreateSequenceStrings(String,int,int)for these dialects.Overloaded form of
The default definition is to suffixSequenceSupport.getCreateSequenceString(String), additionally taking the initial value and increment size to be applied to the sequence definition.SequenceSupport.getCreateSequenceString(String)with the string:start with initialValue increment by incrementSizefor the argumentsinitialValueandincrementSize. Dialects need to override this method if different key phrases are used to apply the allocation information.- Parameters:
sequenceName- The name of the sequenceinitialValue- The initial value to apply to 'create sequence' statementincrementSize- The increment value to apply to 'create sequence' statement- Returns:
- The sequence creation command
- Throws:
MappingException- If sequences are not supported.
-
getSelectSequencePreviousValString
Description copied from interface:SequenceSupportGenerate the select expression fragment that will retrieve the previous value of a sequence as part of another (typically DML) statement.This differs from
SequenceSupport.getSequencePreviousValString(String)in that it must return an expression usable within another statement.- Specified by:
getSelectSequencePreviousValStringin interfaceSequenceSupport- Overrides:
getSelectSequencePreviousValStringin classANSISequenceSupport- Parameters:
sequenceName- the name of the sequence- Returns:
- The "previous value" fragment.
- Throws:
MappingException- If sequences are not supported.
-
getDropSequenceString
Description copied from interface:SequenceSupportTypically dialects which support sequences can drop a sequence with a single command. This is convenience form ofSequenceSupport.getDropSequenceStrings(java.lang.String)to help facilitate that.Dialects which support sequences and can drop a sequence in a single command need *only* override this method. Dialects which support sequences but require multiple commands to drop a sequence should instead override
SequenceSupport.getDropSequenceStrings(java.lang.String).- Parameters:
sequenceName- The name of the sequence- Returns:
- The sequence drop commands
- Throws:
MappingException- If sequences are not supported.
-
sometimesNeedsStartingValue
public boolean sometimesNeedsStartingValue()Description copied from interface:SequenceSupportDo we need to explicitly specifyminvalueormaxvaluewhen the initial value doesn't have the same sign as the increment?
-