[jOOQ/jOOQ#11651] Add parser support for VERTICA IDENTITY column type
This commit is contained in:
parent
fde3cb20ba
commit
7157c2e5ac
@ -11063,6 +11063,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
|
||||
case 'A':
|
||||
if (parseKeywordOrIdentifierIf("ARRAY"))
|
||||
return SQLDataType.OTHER.getArrayDataType();
|
||||
else if (parseKeywordIf("AUTO_INCREMENT")) {
|
||||
parseDataTypeIdentityArgsIf();
|
||||
return SQLDataType.INTEGER.identity(true);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
@ -11148,6 +11152,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
|
||||
else
|
||||
return SQLDataType.INTERVAL;
|
||||
}
|
||||
else if (parseKeywordIf("IDENTITY")) {
|
||||
parseDataTypeIdentityArgsIf();
|
||||
return SQLDataType.INTEGER.identity(true);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
@ -11286,6 +11294,13 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
|
||||
return new DefaultDataType(dsl.dialect(), Object.class, parseName());
|
||||
}
|
||||
|
||||
private final void parseDataTypeIdentityArgsIf() {
|
||||
if (parseIf('(')) {
|
||||
parseList(',', ParseContext::parseField);
|
||||
parse(')');
|
||||
}
|
||||
}
|
||||
|
||||
private final boolean parseKeywordOrIdentifierIf(String keyword) {
|
||||
int p = position();
|
||||
char quoteEnd = parseQuote(false);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user