very minor cleanups in Dialect
Signed-off-by: Gavin King <gavin@hibernate.org>
This commit is contained in:
parent
0ba7aec32d
commit
ed7ba223d1
|
@ -632,11 +632,9 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
* @see AnsiSqlKeywords
|
* @see AnsiSqlKeywords
|
||||||
*/
|
*/
|
||||||
protected void registerDefaultKeywords() {
|
protected void registerDefaultKeywords() {
|
||||||
AnsiSqlKeywords keywords = new AnsiSqlKeywords();
|
// Not using #registerKeyword() since these are already lowercase,
|
||||||
//Not using #registerKeyword as:
|
// better efficiency with addAll() as it can pre-size the collection
|
||||||
// # these are already lowercase
|
sqlKeywords.addAll( new AnsiSqlKeywords().sql2003() );
|
||||||
// # better efficiency of addAll as it can pre-size the collections
|
|
||||||
sqlKeywords.addAll( keywords.sql2003() );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -673,13 +671,10 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
*/
|
*/
|
||||||
protected Integer resolveSqlTypeCode(String columnTypeName, TypeConfiguration typeConfiguration) {
|
protected Integer resolveSqlTypeCode(String columnTypeName, TypeConfiguration typeConfiguration) {
|
||||||
final int parenthesisIndex = columnTypeName.lastIndexOf( '(' );
|
final int parenthesisIndex = columnTypeName.lastIndexOf( '(' );
|
||||||
final String baseTypeName;
|
final String baseTypeName =
|
||||||
if ( parenthesisIndex == -1 ) {
|
parenthesisIndex == -1
|
||||||
baseTypeName = columnTypeName;
|
? columnTypeName
|
||||||
}
|
: columnTypeName.substring( 0, parenthesisIndex ).trim();
|
||||||
else {
|
|
||||||
baseTypeName = columnTypeName.substring( 0, parenthesisIndex ).trim();
|
|
||||||
}
|
|
||||||
return resolveSqlTypeCode( columnTypeName, baseTypeName, typeConfiguration );
|
return resolveSqlTypeCode( columnTypeName, baseTypeName, typeConfiguration );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -793,7 +788,7 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
* @return a SQL expression that will occur in a {@code check} constraint
|
* @return a SQL expression that will occur in a {@code check} constraint
|
||||||
*/
|
*/
|
||||||
public String getCheckCondition(String columnName, String[] values) {
|
public String getCheckCondition(String columnName, String[] values) {
|
||||||
StringBuilder check = new StringBuilder();
|
final StringBuilder check = new StringBuilder();
|
||||||
check.append( columnName ).append( " in (" );
|
check.append( columnName ).append( " in (" );
|
||||||
String separator = "";
|
String separator = "";
|
||||||
boolean nullIsValid = false;
|
boolean nullIsValid = false;
|
||||||
|
@ -835,7 +830,7 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
*/
|
*/
|
||||||
@Deprecated(since="6.5", forRemoval = true)
|
@Deprecated(since="6.5", forRemoval = true)
|
||||||
public String getCheckCondition(String columnName, long[] values) {
|
public String getCheckCondition(String columnName, long[] values) {
|
||||||
Long[] boxedValues = new Long[values.length];
|
final Long[] boxedValues = new Long[values.length];
|
||||||
for ( int i = 0; i<values.length; i++ ) {
|
for ( int i = 0; i<values.length; i++ ) {
|
||||||
boxedValues[i] = values[i];
|
boxedValues[i] = values[i];
|
||||||
}
|
}
|
||||||
|
@ -850,7 +845,7 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
* @return a SQL expression that will occur in a {@code check} constraint
|
* @return a SQL expression that will occur in a {@code check} constraint
|
||||||
*/
|
*/
|
||||||
public String getCheckCondition(String columnName, Long[] values) {
|
public String getCheckCondition(String columnName, Long[] values) {
|
||||||
StringBuilder check = new StringBuilder();
|
final StringBuilder check = new StringBuilder();
|
||||||
check.append( columnName ).append( " in (" );
|
check.append( columnName ).append( " in (" );
|
||||||
String separator = "";
|
String separator = "";
|
||||||
boolean nullIsValid = false;
|
boolean nullIsValid = false;
|
||||||
|
@ -878,7 +873,7 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
final boolean isCharacterJdbcType = isCharacterType( jdbcType.getJdbcTypeCode() );
|
final boolean isCharacterJdbcType = isCharacterType( jdbcType.getJdbcTypeCode() );
|
||||||
assert isCharacterJdbcType || isIntegral( jdbcType.getJdbcTypeCode() );
|
assert isCharacterJdbcType || isIntegral( jdbcType.getJdbcTypeCode() );
|
||||||
|
|
||||||
StringBuilder check = new StringBuilder();
|
final StringBuilder check = new StringBuilder();
|
||||||
check.append( columnName ).append( " in (" );
|
check.append( columnName ).append( " in (" );
|
||||||
String separator = "";
|
String separator = "";
|
||||||
boolean nullIsValid = false;
|
boolean nullIsValid = false;
|
||||||
|
@ -1679,18 +1674,24 @@ public abstract class Dialect implements ConversionContext, TypeContributor, Fun
|
||||||
* for the trim character if {@code isWhitespace}
|
* for the trim character if {@code isWhitespace}
|
||||||
* was false.
|
* was false.
|
||||||
*
|
*
|
||||||
* @param specification {@linkplain TrimSpec#LEADING leading}, {@linkplain TrimSpec#TRAILING trailing}
|
* @param specification
|
||||||
|
* {@linkplain TrimSpec#LEADING leading},
|
||||||
|
* {@linkplain TrimSpec#TRAILING trailing},
|
||||||
* or {@linkplain TrimSpec#BOTH both}
|
* or {@linkplain TrimSpec#BOTH both}
|
||||||
* @param isWhitespace {@code true} if the trim character is a whitespace and can be omitted,
|
*
|
||||||
* {@code false} if it must be explicit and a ?2 placeholder should be included in the pattern
|
* @param isWhitespace
|
||||||
|
* {@code true} if trimming whitespace, and the ?2
|
||||||
|
* placeholder for the trim character should be omitted,
|
||||||
|
* {@code false} if the trim character is explicit and
|
||||||
|
* the ?2 placeholder must be included in the pattern
|
||||||
*/
|
*/
|
||||||
public String trimPattern(TrimSpec specification, boolean isWhitespace) {
|
public String trimPattern(TrimSpec specification, boolean isWhitespace) {
|
||||||
return "trim(" + specification + ( isWhitespace ? "" : " ?2" ) + " from ?1)";
|
return "trim(" + specification + ( isWhitespace ? "" : " ?2" ) + " from ?1)";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether the database supports adding a fractional interval to a timestamp,
|
* Whether the database supports adding a fractional interval
|
||||||
* for example {@code timestamp + 0.5 second}.
|
* to a timestamp, for example {@code timestamp + 0.5 second}.
|
||||||
*/
|
*/
|
||||||
public boolean supportsFractionalTimestampArithmetic() {
|
public boolean supportsFractionalTimestampArithmetic() {
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in New Issue