**Use case**

ClickHouse already throws exception if the data for INSERT is empty:

```
Code: 108. DB::Exception: No data to insert
```

Let's introduce a setting, enabled by default, to control this behavior.
The user will be able to disable it to allow empty INSERTs.

This is useful in some batch scripts.
else
        {
            in_external_group = false;
            /// Parameter arg after underline.
            )
            {
                auto param_continuation = arg.substr(strlen("--param_")
                auto equal_pos = param_continuation.find_first_of('='
                if (equal_pos == std::string::npos)
                {
                    /// param_name value
                    ++a
                    if (arg_num >= argc)
                        throw Exception("Parameter requires value", ErrorCodes::BAD_ARGUMENTS
                    arg = argv[arg_num];
                    quee(String(param_continuation), String(arg)
                }
                else
                {
                    if (equal_pos == 0)
                        throw Exception("Parameter name cannot be empty", ErrorCodes::BAD_ARGUMENTS
                    /// param_name=value
                    quee(param_continuation.substr(0, equal_pos), param_continuation.substr(equal_pos + 1)
                }
            }
            else if (arg.starts_with("--host") || arg.starts_with("-h"))
            {
                std::string host_arg;
                /// --host host
                if (arg == " == "-h")