The following liquibase changeset does not work as expected

```xml
        <createTable tableName="test">
            <column name="id" type="SERIAL">
                <constraints nullable="false" primaryKey="true"/>
            </column>
        </createTable>
```

This changeset results in sql

```sql
CREATE TABLE test (id INTEGER NOT NULL, CONSTRAINT TEST_PKEY PRIMARY KEY (id));
```

In liquibase 3.6.3 and earlier the type `SERIAL` was used for the column which means that a sequence is automatically included.

This issue seems to be caused by #874
It appears that SERIAL columns are replaced by INT, however liquibase does reconize that this column type is an auto increment column.

It would be acceptible if the generated sql would be

```sql
CREATE TABLE test (id INTEGER GENERATED BY DEFAULT AS IDENTITY NOT NULL, CONSTRAINT TEST_PKEY PRIMARY KEY (id));
```


int minParameters = this.getMinParameters(database);
        if (parameters.size() > maxParameters) {
            throw new UnexpectedLiquibaseException("Type "+getClass()+" doesn't support "+ maxParameters+" parameters");
        }
        if (parameters.size() < minParameters) {
            throw new UnexpectedLiquibaseException("Type "+getClass()+" requires "+ minParameters+" parameters");
        }
        return true;
    }
    /**
     * Transforms this data type into the native data type of the target DBMS.
     * @param database the {@link Database} for which the native data type is to be constructed
     * @return the new, native data type
     */
    public DatabaseDataType toDatabaseDataType(Database database) {
        if (database instanceof MSSQLDatabase) {
            String name = database.escapeDataTypeName(getName());
            int dataTypeMaxParameters = database.getDataTypeMaxParameters(getName());
            Object[] parameters = getParameters();
            if (dataTypeMaxParameters < parameters.length) {
                parameters = Arrays.copyOfRange(parameters, 0, dataTypeMaxParameters);
            }
            return new DatabaseDataType(name, parameters);
        }
        DatabaseDataType type = new DatabaseDataType(name.toUpperCase(Locale.US), getParameters());
        type.addAdditionalInformation(additionalInformation);
        return type;
    }
    /**
     * Returns the value object in a format to include in SQL. Quote if necessary.