Please refer to this page to view the data type mappings from your source to Snowflake. If the data type mapping differs on the Snowflake side after performing the change on the source, the following section explains how these changes will be handled by the automatic replication feature.
Original Data Type |
Updated Data Type |
Data Type Conversion |
Column properties adjusted |
Backfill supported |
NUMBER |
FLOAT |
FLOAT |
❌ |
✅ |
|
NUMBER |
NUMBER |
✅ |
N/A |
|
TEXT |
TEXT |
❌ |
✅ |
|
VARIANT |
VARIANT |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
FLOAT |
NUMBER |
NUMBER |
❌ |
✅ |
|
TEXT |
TEXT |
❌ |
✅ |
|
VARIANT |
VARIANT |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
TEXT |
NUMBER |
NUMBER |
❌ |
✅ |
|
FLOAT |
FLOAT |
❌ |
✅ |
|
TEXT |
TEXT |
✅ |
N/A |
|
DATE |
DATE |
❌ |
✅ |
|
TIMESTAMP_TZ |
TIMESTAMP_TZ |
❌ |
✅ |
|
TIMESTAMP_NTZ |
TIMESTAMP_NTZ |
❌ |
✅ |
|
TIME |
TIME |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
VARIANT |
TEXT |
TEXT |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
DATE |
TEXT |
TEXT |
❌ |
✅ |
|
TIMESTAMP_TZ |
TIMESTAMP_TZ |
❌ |
✅ |
|
TIMESTAMP_NTZ |
TIMESTAMP_NTZ |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
TIMESTAMP_TZ |
TEXT |
TEXT |
❌ |
✅ |
|
DATE |
DATE |
❌ |
✅ |
|
TIMESTAMP_NTZ |
TIMESTAMP_NTZ |
❌ |
✅ |
|
TIME |
TIME |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
TIMESTAMP_NTZ |
TEXT |
TEXT |
❌ |
✅ |
|
DATE |
DATE |
❌ |
✅ |
|
TIMESTAMP_NTZ |
TIMESTAMP_TZ |
❌ |
✅ |
|
TIME |
TIME |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
TIME |
TEXT |
TEXT |
❌ |
✅ |
|
Others |
Same as Updated Data Type |
❌ |
❌ |
BINARY |
Any |
Same as Updated Data Type |
❌ |
❌ |
Important Notes
- Narrowing Changes: The pipeline will ignore narrowing changes in numeric precision and scale, or string length to ensure compatibility between old and new data in the destination.
- Numeric Field Adjustments: When switching between
FLOAT
and NUMBER
, be aware that precision may increase or decrease due to the differing precision and scale characteristics of these types.
- Handling Precision and Scale Changes: Changes in precision and scale can only be applied to the
NUMBER
data type. If the source schema maps to a data type different from NUMBER
, the change will not be reflected in the destination.
- Backfilling: Backfilling a column involves copying existing data from the old column to a new column with the updated data type, ensuring no data is lost during the conversion. Please note that we leverage Snowflake’s data type coercion to backfill and transform data from the original data type to the new one. If Snowflake is unable to transform the values to the desired data type during backfilling, the pipeline will fail, prompting a resync of the affected table.