# MySQL to SingleStore Data Type Mapping

The following mappings define how MySQL data types are represented in SingleStore.

For more information about SingleStore data types, refer to [Data Types](https://docs.singlestore.com/cloud/reference/sql-reference/data-types.md).

## String Types

| **MySQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/string-types.md)) |
| -------------- | ----------------------------------------------------------------------------------------------------------------------- |
| CHAR           | CHAR                                                                                                                    |
| VARCHAR        | VARCHAR                                                                                                                 |
| NCHAR          | CHAR                                                                                                                    |
| NVARCHAR       | VARCHAR                                                                                                                 |
| TEXT           | TEXT                                                                                                                    |
| TINYTEXT       | TINYTEXT                                                                                                                |
| MEDIUMTEXT     | MEDIUMTEXT                                                                                                              |
| LONGTEXT       | LONGTEXT                                                                                                                |

## Integer Types

| **MySQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/integer-numbers.md)) |
| -------------- | -------------------------------------------------------------------------------------------------------------------------- |
| TINYINT        | TINYINT                                                                                                                    |
| SMALLINT       | SMALLINT                                                                                                                   |
| MEDIUMINT      | INT                                                                                                                        |
| INT / INTEGER  | INT                                                                                                                        |
| BIGINT         | BIGINT                                                                                                                     |
| BOOL / BOOLEAN | TINYINT                                                                                                                    |

## Floating Point and Decimal Types

| **MySQL Type**   | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/real-numbers.md)) |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------- |
| FLOAT            | FLOAT  (if precision ≤ 24)DOUBLE (if precision > 24)                                                                    |
| DOUBLE           | DOUBLE                                                                                                                  |
| DOUBLE PRECISION | DOUBLE                                                                                                                  |
| DECIMAL          | DECIMAL                                                                                                                 |

## Binary String Types

| **MySQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/binary-string-types.md)) |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| BINARY         | VARBINARY                                                                                                                      |

## Date and Time Types

| **MySQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/time-and-date.md)) |
| -------------- | ------------------------------------------------------------------------------------------------------------------------ |
| DATE           | DATE                                                                                                                     |
| DATETIME       | DATETIME                                                                                                                 |
| TIMESTAMP      | DATETIME                                                                                                                 |
| TIME           | TIME                                                                                                                     |
| YEAR           | YEAR                                                                                                                     |

## Invalid MySQL `DATETIME` and `TIMESTAMP` Values

Certain invalid `DATETIME` values are automatically converted to valid SingleStore values:

| **MySQL Type**      | **SingleStoreType** |
| ------------------- | ------------------- |
| 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 takes place:

| **MySQL Type**      | **SingleStoreType** |
| ------------------- | ------------------- |
| 0000-00-00 00:00:00 | 1000-01-01 00:00:00 |

Flow converts these invalid values using the following rules, in order:

1. **Zero dates**

   If the value is `0000-00-00 00:00:00`, convert it to `1000-01-01 00:00:00`.

2. **Years below `1000`**

   If the year is between `0000` and `0999`, add `1000` to the year.

   Examples:

   * Year `0001` becomes `1001`
   * Year `0025` becomes `1025`
   * Year `0999` becomes `1999`

3. **Invalid month or day (`00`)**

   If the month or day is `00`, it is replaced with `01`.

   * If month is `00`, replace it with `01`.
   * If day is `00`, replace it with `01`.

   For example:

   * `0001-00-00` → (Rule 2) → `1001-00-00` → (Rule 3) → `1001-01-01`

These rules ensure that common invalid values can be ingested without pipeline failures while preserving their relative ordering as much as possible.

## JSON Types

| **MySQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/json-type.md)) |
| -------------- | -------------------------------------------------------------------------------------------------------------------- |
| JSON           | JSON                                                                                                                 |

## Other Types

| **MySQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/other-types.md)) |
| -------------- | ---------------------------------------------------------------------------------------------------------------------- |
| ENUM           | ENUM                                                                                                                   |
| BIT            | BIT                                                                                                                    |

## 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.

***

Modified at: April 2, 2026

Source: [/cloud/load-data/load-data-with-singlestore-flow/data-type-mapping-in-singlestore-flow/mysql-to-singlestore-data-type-mapping/](https://docs.singlestore.com/cloud/load-data/load-data-with-singlestore-flow/data-type-mapping-in-singlestore-flow/mysql-to-singlestore-data-type-mapping/)

(An index of the documentation is available at /llms.txt)
