[jOOQ/jOOQ#9945] ... but only timestamp precision

This commit is contained in:
Lukas Eder 2020-03-13 13:55:14 +01:00
parent 7c86c20c22
commit e12cada70a

View File

@ -774,10 +774,10 @@ final class Tools {
private static final Set<SQLDialect> REQUIRES_BACKSLASH_ESCAPING = SQLDialect.supportedBy(MARIADB, MYSQL);
private static final Set<SQLDialect> NO_SUPPORT_NULL = SQLDialect.supportedBy(DERBY, FIREBIRD, HSQLDB);
private static final Set<SQLDialect> NO_SUPPORT_BINARY_TYPE_LENGTH = SQLDialect.supportedBy(POSTGRES);
private static final Set<SQLDialect> NO_SUPPORT_TIMESTAMP_PRECISION = SQLDialect.supportedBy(DERBY);
private static final Set<SQLDialect> NO_SUPPORT_CAST_TYPE_IN_DDL = SQLDialect.supportedBy(MARIADB, MYSQL);
private static final Set<SQLDialect> DEFAULT_BEFORE_NULL = SQLDialect.supportedBy(FIREBIRD, HSQLDB);
private static final Set<SQLDialect> SUPPORT_MYSQL_SYNTAX = SQLDialect.supportedBy(MARIADB, MYSQL);
private static final Set<SQLDialect> SUPPORT_POSTGRES_SYNTAX = SQLDialect.supportedBy(POSTGRES);
// ------------------------------------------------------------------------
// XXX: Record constructors and related methods
@ -4921,7 +4921,7 @@ final class Tools {
ctx.sql(typeName);
}
}
else if (type.hasPrecision() && type.precision() > 0) {
else if (type.hasPrecision() && type.precision() > 0 && (!type.isTimestamp() || !NO_SUPPORT_TIMESTAMP_PRECISION.contains(ctx.family()))) {
if (type.hasScale())
ctx.sql(typeName).sql('(').sql(type.precision()).sql(", ").sql(type.scale()).sql(')');
else