MCPcopy Create free account
hub / github.com/ClickHouse/ClickHouse / registerDataTypeNumbers

Function registerDataTypeNumbers

src/DataTypes/DataTypesNumber.cpp:45–384  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43
44
45void registerDataTypeNumbers(DataTypeFactory & factory)
46{
47 factory.registerDataType("UInt8", createNumericDataType<UInt8>, DataTypeFactory::Case::Sensitive,
48 Documentation{
49 .description = "A 8-bit unsigned integer. See the `Int32` entry for the full documentation of the integer types.",
50 .syntax = "UInt8",
51 .related = {"Int32"},
52 });
53 factory.registerDataType("UInt16", createNumericDataType<UInt16>, DataTypeFactory::Case::Sensitive,
54 Documentation{
55 .description = "A 16-bit unsigned integer. See the `Int32` entry for the full documentation of the integer types.",
56 .syntax = "UInt16",
57 .related = {"Int32"},
58 });
59 factory.registerDataType("UInt32", createNumericDataType<UInt32>, DataTypeFactory::Case::Sensitive,
60 Documentation{
61 .description = "A 32-bit unsigned integer. See the `Int32` entry for the full documentation of the integer types.",
62 .syntax = "UInt32",
63 .related = {"Int32"},
64 });
65 factory.registerDataType("UInt64", createNumericDataType<UInt64>, DataTypeFactory::Case::Sensitive,
66 Documentation{
67 .description = "A 64-bit unsigned integer. See the `Int32` entry for the full documentation of the integer types.",
68 .syntax = "UInt64",
69 .related = {"Int32"},
70 });
71
72 factory.registerDataType("Int8", createNumericDataType<Int8>, DataTypeFactory::Case::Sensitive,
73 Documentation{
74 .description = "A 8-bit signed integer. See the `Int32` entry for the full documentation of the integer types.",
75 .syntax = "Int8",
76 .related = {"Int32"},
77 });
78 factory.registerDataType("Int16", createNumericDataType<Int16>, DataTypeFactory::Case::Sensitive,
79 Documentation{
80 .description = "A 16-bit signed integer. See the `Int32` entry for the full documentation of the integer types.",
81 .syntax = "Int16",
82 .related = {"Int32"},
83 });
84 factory.registerDataType("Int32", createNumericDataType<Int32>, DataTypeFactory::Case::Sensitive,
85 Documentation{
86 .description = R"DOCS_MD(
87ClickHouse offers a number of fixed-length integers,
88with a sign (`Int`) or without a sign (unsigned `UInt`) ranging from one byte to 32 bytes.
89
90When creating tables, numeric parameters for integer numbers can be set (e.g. `TINYINT(8)`, `SMALLINT(16)`, `INT(32)`, `BIGINT(64)`), but ClickHouse ignores them.
91
92## Integer Ranges {#integer-ranges}
93
94Integer types have the following ranges:
95
96| Type | Range |
97|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|
98| `Int8` | \[-128 : 127\] |
99| `Int16` | \[-32768 : 32767\] |
100| `Int32` | \[-2147483648 : 2147483647\] |
101| `Int64` | \[-9223372036854775808 : 9223372036854775807\] |
102| `Int128` | \[-170141183460469231731687303715884105728 : 170141183460469231731687303715884105727\] |

Callers 1

DataTypeFactoryMethod · 0.85

Calls 3

registerDataTypeMethod · 0.80
registerAliasMethod · 0.80

Tested by

no test coverage detected