MySQL to SingleStore Data Type Mapping
On this page
The following mappings define how MySQL data types are represented in SingleStore.
String Types
|
MySQL Type |
SingleStore Type |
|---|---|
|
CHAR |
CHAR |
|
VARCHAR |
VARCHAR |
|
NCHAR |
CHAR |
|
NVARCHAR |
VARCHAR |
|
TEXT |
TEXT |
|
TINYTEXT |
TINYTEXT |
|
MEDIUMTEXT |
MEDIUMTEXT |
|
LONGTEXT |
LONGTEXT |
|
ENUM |
ENUM |
Integer Types
|
MySQL Type |
SingleStore Type |
|---|---|
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
MEDIUMINT |
INT |
|
INT / INTEGER |
INT |
|
BIGINT |
BIGINT |
Floating Point and Decimal Types
|
MySQL Type |
SingleStore Type |
|---|---|
|
FLOAT |
FLOAT (if precision ≤ 24) DOUBLE (if precision > 24) |
|
DOUBLE |
DOUBLE |
|
DOUBLE PRECISION |
DOUBLE |
|
DECIMAL |
DECIMAL |
Boolean Types
|
MySQL Type |
SingleStore Type |
|---|---|
|
BIT |
BIT |
|
BOOL / BOOLEAN |
TINYINT |
Binary Types
|
MySQL Type |
SingleStore Type |
|---|---|
|
BINARY |
VARBINARY |
Date and Time Types
|
MySQL Type |
SingleStore Type |
|---|---|
|
DATE |
DATE |
|
DATETIME |
DATETIME |
|
TIMESTAMP |
DATETIME |
|
TIME |
TIME |
|
YEAR |
YEAR |
Invalid MySQL Date and Time Values
Certain invalid DATETIME values are automatically converted to valid SingleStore values:
|
MySQL Type |
SingleStore Type |
|---|---|
|
0000-00-00 00:00:00 |
1000-01-01 00:00:00 |
|
0001-00-00 00:00:00 |
1001-01-01 00:00:00 |
|
0001-01-01 01:01:01 |
1001-01-01 01:01:01 |
|
0025-01-01 00:00:00 |
1025-01-01 00:00:00 |
For TIMESTAMP, the following conversion is applied:
|
MySQL Type |
SingleStore Type |
|---|---|
|
0000-00-00 00:00:00 |
1970-01-01 00:00:00 |
JSON
|
MySQL Type |
SingleStore Type |
|---|---|
|
JSON |
JSON |
Additional Notes
-
DATETIME is mapped to DATETIME if length = 19 (no fractional seconds) and DATETIME(6) if length > 19 (has fractional seconds).
-
FLOAT maps to FLOAT if precision ≤ 24, otherwise DOUBLE.
Last modified: February 23, 2026