> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Other format settings

> ClickHouse format settings in the Other generated group.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Default</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Changeable without restart
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

These settings are autogenerated from [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/FormatFactorySettings.h).

<h2 id="allow_special_bool_values_inside_variant">
  allow\_special\_bool\_values\_inside\_variant
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Allows to parse Bool values inside Variant type from special text bool values like "on", "off", "enable", "disable", etc.

<h2 id="check_conversion_from_numbers_to_enum">
  check\_conversion\_from\_numbers\_to\_enum
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

Throw an exception during Numbers to Enum conversion if the value does not exist in Enum.

Possible values:

* 0 — Disabled.
* 1 — Enabled.

**Example**

```text theme={null}
CREATE TABLE tab (
  val Enum('first' = 1, 'second' = 2, 'third' = 3)
) ENGINE = Memory;

INSERT INTO tab SETTINGS check_conversion_from_numbers_to_enum = 1 VALUES (4); -- returns an error
```

<h2 id="column_names_for_schema_inference">
  column\_names\_for\_schema\_inference
</h2>

The list of column names to use in schema inference for formats without column names. The format: 'column1,column2,column3,...'

<h2 id="errors_output_format">
  errors\_output\_format
</h2>

<SettingsInfoBlock type="String" default_value="CSV" />

Method to write Errors to text output.

<h2 id="insert_distributed_one_random_shard">
  insert\_distributed\_one\_random\_shard
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Enables or disables random shard insertion into a [Distributed](/docs/reference/engines/table-engines/special/distributed) table when there is no distributed key.

By default, when inserting data into a `Distributed` table with more than one shard, the ClickHouse server will reject any insertion request if there is no distributed key. When `insert_distributed_one_random_shard = 1`, insertions are allowed and data is forwarded randomly among all shards.

Possible values:

* 0 — Insertion is rejected if there are multiple shards and no distributed key is given.
* 1 — Insertion is done randomly among all available shards when no distributed key is given.

<h2 id="interval_output_format">
  interval\_output\_format
</h2>

<SettingsInfoBlock type="IntervalOutputFormat" default_value="numeric" />

Allows choosing different output formats of the text representation of interval types.

Possible values:

* `kusto` - KQL-style output format.

  ClickHouse outputs intervals in [KQL format](https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-timespan-format-strings#the-constant-c-format-specifier). For example, `toIntervalDay(2)` would be formatted as `2.00:00:00`. Please note that for interval types of varying length (ie. `IntervalMonth` and `IntervalYear`) the average number of seconds per interval is taken into account.

* `numeric` - Numeric output format.

  ClickHouse outputs intervals as their underlying numeric representation. For example, `toIntervalDay(2)` would be formatted as `2`.

See also:

* [Interval](/docs/reference/data-types/special-data-types/interval)

<h2 id="into_outfile_create_parent_directories">
  into\_outfile\_create\_parent\_directories
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Automatically create parent directories when using INTO OUTFILE if they do not already exists.

<h2 id="json_type_escape_dots_in_keys">
  json\_type\_escape\_dots\_in\_keys
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

When enabled, dots in JSON keys will be escaped during parsing.

<h2 id="max_dynamic_subcolumns_in_json_type_parsing">
  max\_dynamic\_subcolumns\_in\_json\_type\_parsing
</h2>

<SettingsInfoBlock type="UInt64Auto" default_value="auto" />

The maximum number of dynamic subcolumns that can be created in every column during parsing of JSON column.
It allows to control the number of dynamic subcolumns during parsing regardless of dynamic parameters specified in the data type.

<h2 id="precise_float_parsing">
  precise\_float\_parsing
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

Use the precise float parsing algorithm, which always returns the closest representable value to the input. When disabled, a faster but less accurate algorithm is used that may differ from the precise result by the least significant bits.

<h2 id="validate_experimental_and_suspicious_types_inside_nested_types">
  validate\_experimental\_and\_suspicious\_types\_inside\_nested\_types
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

Validate usage of experimental and suspicious types inside nested types like Array/Map/Tuple
