[jOOQ/jOOQ#11658] PostgresDatabase doesn't produce CHAR type length for CHAR(n)[] array types

This commit is contained in:
Lukas Eder 2021-03-19 15:56:01 +01:00
parent 436c2ed393
commit cf16992b0e

View File

@ -116,10 +116,10 @@ public class PostgresTableDefinition extends AbstractTableDefinition {
COLUMNS.ORDINAL_POSITION,
dataType.as(COLUMNS.DATA_TYPE),
// [#8067] A more robust / sophisticated decoding might be available
// [#8067] [#11658] A more robust / sophisticated decoding might be available
nvl(
COLUMNS.CHARACTER_MAXIMUM_LENGTH,
when(COLUMNS.UDT_NAME.eq(inline("_varchar")), PG_ATTRIBUTE.ATTTYPMOD.sub(inline(4)))).as(COLUMNS.CHARACTER_MAXIMUM_LENGTH),
when(COLUMNS.UDT_NAME.in(inline("_varchar"), inline("_bpchar"), inline("_char")), PG_ATTRIBUTE.ATTTYPMOD.sub(inline(4)))).as(COLUMNS.CHARACTER_MAXIMUM_LENGTH),
precision.as(COLUMNS.NUMERIC_PRECISION),
COLUMNS.NUMERIC_SCALE,
(when(isIdentity, inline("YES"))).as(COLUMNS.IS_IDENTITY),