Is there any way to manually make CH throw a specific error?

Something like this:
```sql
SELECT throwError(999);

Received exception from server (version 22.2.2):
Code: 999. DB::Exception: KEEPER_EXCEPTION ...
```

PS:
*Although there is a similar function (`throwIf`), it only returns code=395 (FUNCTION_THROW_IF_VALUE_IS_NON_ZERO).*

**Use case**

We're looking something like this so we can simulate errors and take relevant actions agains some errors.

else if (std::is_same_v<Transform, AddMicrosecondsImpl>)
                    scale = 6;
                else if (std::is_same_v<Transform, AddMillisecondsImpl>)
                    scale = 3;
                scale = std::max(scale, from_scale);
                return std::make_shared<DataTypeDateTime64>(scale, extractTimeZoneNameFromFunctionArguments(arguments, 2, 0));
            }
            else
            {
                auto scale = DataTypeDateTime64::default_scale;
                if (std::is_same_v<Transform, AddNanosecondsImpl>)
                    scale = 9;
                else if (std::is_same_v<Transform, AddMicrosecondsImpl>)
                    scale = 6;
                else if (std::is_same_v<Transform, AddMillisecondsImpl>)
                    scale = 3;
                return std::make_shared<DataTypeDateTime64>(scale, extractTimeZoneNameFromFunctionArguments(arguments, 2, 0));
            }
        }
        else
        {
            static_assert("Failed to resolve return type.");
        }
        
        return nullptr;
    }
    bool useDefaultImplementationForConstants() const override { return true; }
    ColumnNumbers getArgumentsThatAreAlwaysConstant() const override { return {2}; }
    ColumnPtr executeImpl(const ColumnsWithTypeAndName & arguments, const DataTypePtr & result_type, size_t ) const override
    {