@Override
    public String toString() {
        StringBuilder sb = new StringBuilder(name);
        sb.append(" ").append(typeName);
        if (length >= 0) {
            sb.append('(').append(length);
            if (scale != null) {
                sb.append(", ").append(scale);
            }
            sb.append(')');
        }
        if (charsetName != null && !charsetName.isEmpty()) {
            sb.append(" CHARSET ").append(charsetName);
        }
        if (!optional) {
            sb.append(" NOT NULL");
        }
        if (autoIncremented) {
            sb.append(" AUTO_INCREMENTED");
        }
        if (generated) {
            sb.append(" GENERATED");
        }
        if (hasDefaultValue() && defaultValue() == null) {
            sb.append(" DEFAULT VALUE NULL");
        } else if (defaultValue != null) {
            sb.append(" DEFAULT VALUE ").append(defaultValue);
        }
        return sb.toString();
    }
A implementation class of {@link Column}, which can used by {@link TableChange}
inlong-sort/sort-flink/sort-flink-v1.13/sort-connectors/postgres-cdc/src/main/java/org/apache/inlong/sort/cdc/postgres/debezium/internal/ColumnImpl.java