| 70 | } |
| 71 | |
| 72 | void registerDataTypeNumbers(DataTypeFactory & factory) |
| 73 | { |
| 74 | factory.registerDataType("UInt8", createNumericDataType<UInt8>); |
| 75 | factory.registerDataType("UInt16", createNumericDataType<UInt16>); |
| 76 | factory.registerDataType("UInt32", createNumericDataType<UInt32>); |
| 77 | factory.registerDataType("UInt64", createNumericDataType<UInt64>); |
| 78 | |
| 79 | factory.registerDataType("Int8", createNumericDataType<Int8>); |
| 80 | factory.registerDataType("Int16", createNumericDataType<Int16>); |
| 81 | factory.registerDataType("Int32", createNumericDataType<Int32>); |
| 82 | factory.registerDataType("Int64", createNumericDataType<Int64>); |
| 83 | |
| 84 | factory.registerDataType("Float32", createNumericDataType<Float32>); |
| 85 | factory.registerDataType("Float64", createNumericDataType<Float64>); |
| 86 | |
| 87 | factory.registerSimpleDataType("UInt128", [] { return DataTypePtr(std::make_shared<DataTypeUInt128>()); }); |
| 88 | factory.registerSimpleDataType("UInt256", [] { return DataTypePtr(std::make_shared<DataTypeUInt256>()); }); |
| 89 | |
| 90 | factory.registerSimpleDataType("Int128", [] { return DataTypePtr(std::make_shared<DataTypeInt128>()); }); |
| 91 | factory.registerSimpleDataType("Int256", [] { return DataTypePtr(std::make_shared<DataTypeInt256>()); }); |
| 92 | |
| 93 | /// These synonyms are added for compatibility. |
| 94 | |
| 95 | factory.registerAlias("TINYINT", "Int8", DataTypeFactory::CaseInsensitive); |
| 96 | factory.registerAlias("INT1", "Int8", DataTypeFactory::CaseInsensitive); /// MySQL |
| 97 | factory.registerAlias("BYTE", "Int8", DataTypeFactory::CaseInsensitive); /// MS Access |
| 98 | factory.registerAlias("SMALLINT", "Int16", DataTypeFactory::CaseInsensitive); |
| 99 | factory.registerAlias("INT", "Int32", DataTypeFactory::CaseInsensitive); |
| 100 | factory.registerAlias("INTEGER", "Int32", DataTypeFactory::CaseInsensitive); |
| 101 | factory.registerAlias("BIGINT", "Int64", DataTypeFactory::CaseInsensitive); |
| 102 | factory.registerAlias("FLOAT", "Float32", DataTypeFactory::CaseInsensitive); |
| 103 | factory.registerAlias("REAL", "Float32", DataTypeFactory::CaseInsensitive); |
| 104 | factory.registerAlias("SINGLE", "Float32", DataTypeFactory::CaseInsensitive); /// MS Access |
| 105 | factory.registerAlias("DOUBLE", "Float64", DataTypeFactory::CaseInsensitive); |
| 106 | factory.registerAlias("MEDIUMINT", "Int32", DataTypeFactory::CaseInsensitive); /// MySQL |
| 107 | |
| 108 | factory.registerAlias("DOUBLE PRECISION", "Float64", DataTypeFactory::CaseInsensitive); |
| 109 | |
| 110 | /// MySQL |
| 111 | factory.registerAlias("TINYINT SIGNED", "Int8", DataTypeFactory::CaseInsensitive); |
| 112 | factory.registerAlias("INT1 SIGNED", "Int8", DataTypeFactory::CaseInsensitive); |
| 113 | factory.registerAlias("SMALLINT SIGNED", "Int16", DataTypeFactory::CaseInsensitive); |
| 114 | factory.registerAlias("MEDIUMINT SIGNED", "Int32", DataTypeFactory::CaseInsensitive); |
| 115 | factory.registerAlias("INT SIGNED", "Int32", DataTypeFactory::CaseInsensitive); |
| 116 | factory.registerAlias("INTEGER SIGNED", "Int32", DataTypeFactory::CaseInsensitive); |
| 117 | factory.registerAlias("BIGINT SIGNED", "Int64", DataTypeFactory::CaseInsensitive); |
| 118 | factory.registerAlias("TINYINT UNSIGNED", "UInt8", DataTypeFactory::CaseInsensitive); |
| 119 | factory.registerAlias("INT1 UNSIGNED", "UInt8", DataTypeFactory::CaseInsensitive); |
| 120 | factory.registerAlias("SMALLINT UNSIGNED", "UInt16", DataTypeFactory::CaseInsensitive); |
| 121 | factory.registerAlias("MEDIUMINT UNSIGNED", "UInt32", DataTypeFactory::CaseInsensitive); |
| 122 | factory.registerAlias("INT UNSIGNED", "UInt32", DataTypeFactory::CaseInsensitive); |
| 123 | factory.registerAlias("INTEGER UNSIGNED", "UInt32", DataTypeFactory::CaseInsensitive); |
| 124 | factory.registerAlias("BIGINT UNSIGNED", "UInt64", DataTypeFactory::CaseInsensitive); |
| 125 | } |
| 126 | |
| 127 | } |
no test coverage detected