Package org.hibernate.annotations
Interface DialectOverride
Allows certain annotations to be overridden in a given SQL
Dialect.
For example, a Formula annotation may be
customized for a given Dialect using the DialectOverride.Formula annotation.
@Formula(value = "(rate * 100) || '%'")
@DialectOverride.Formula(dialect = MySQLDialect.class,
override = @Formula("concat(rate * 100, '%')"))
@DialectOverride.Formula(dialect = DB2Dialect.class,
override = @Formula("varchar_format(rate * 100) || '%'"))
@DialectOverride.Formula(dialect = OracleDialect.class,
override = @Formula("to_char(rate * 100) || '%'"))
@DialectOverride.Formula(dialect = SQLServerDialect.class,
override = @Formula("ltrim(str(rate * 100, 10, 2)) + '%'"))
@DialectOverride.Formula(dialect = SybaseDialect.class,
override = @Formula("ltrim(str(rate * 100, 10, 2)) + '%'"))
private String ratePercent;
An annotation may even be customized for a specific range of versions
of the dialect by specifying a DialectOverride.Version.
dialectspecifies the SQL dialect to which the override applies,sameOrAfterspecifies that the override applies to all versions beginning with the given version, andbeforespecifies that the override applies to all versions earlier than the given version.
- Since:
- 6.0
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic @interfaceSpecializes aCheckin a certain dialect.static @interfacestatic @interfaceSpecializes aColumnDefaultin a certain dialect.static @interfacestatic @interfaceSpecializes aDiscriminatorFormulain a certain dialect.static @interfacestatic @interfacestatic @interfaceSpecializesFilterDefsin a certain dialect.static @interfacestatic @interfaceSpecializesFiltersin a certain dialect.static @interfaceSpecializes aFormulain a certain dialect.static @interfacestatic @interfaceSpecializes aGeneratedColumnin a certain dialect.static @interfacestatic @interfaceSpecializes aJoinFormulain a certain dialect.static @interfacestatic @interfaceMarks an annotation type as a dialect-specific override for some other annotation type.static @interfaceSpecializes aSQLDeletein a certain dialect.static @interfaceSpecializes aSQLDeleteAllin a certain dialect.static @interfacestatic @interfacestatic @interfaceSpecializes aSQLInsertin a certain dialect.static @interfacestatic @interfaceSpecializes anSQLOrderin a certain dialect.static @interfacestatic @interfaceSpecializes aSQLRestrictionin a certain dialect.static @interfacestatic @interfaceSpecializes aSQLSelectin a certain dialect.static @interfacestatic @interfaceSpecializes aSQLUpdatein a certain dialect.static @interfacestatic @interfaceIdentifies a database version.