Target name and data types

To load data to the destination, AutoSync:
  • Uses the source table name, file name, or object name for the target table. If the table doesn't exist, AutoSync creates it.
  • Converts the data into a compatible type supported by the destination. For JSON files, AutoSync can infer string, integer, float, boolean, and object types. For CSV files, by default AutoSync uses a string type in the destination. You can enable schema inference to have AutoSync infer basic types.
  • Adds columns that AutoSync uses internally. The column names are pre-pended with AUTOSYNC_. Table names must be unique in the destination schema.

For example, the following image shows how AutoSync loads a Salesforce Contact object as a Contact table in Snowflake. The image shows only the first three fields and columns in alphabetic order. AutoSync converts the Salesforce Reference and String values to VARCHAR in Snowflake. Because Snowflake supports the DATE type, AutoSync does not convert the birth dates.


A Salesforce Contact object loads as a Contact table in Snowflake

Learn more about how AutoSync maps source data types to the target.

Naming conflicts

Table names must be unique in the destination schema. If you chose the same table or object name from multiple sources, AutoSync suggests unique destination names by appending the source name to the table name. You can accept the suggested name or enter your own.
Resolve naming conflicts

Reserved words and name casing

Destination endpoints typically have a set of reserved keywords that cannot be used as table or column names without using an escape character. Some destinations, such as Snowflake use a convention of uppercase letters for table and column names. By default, AutoSync will convert case to the convention of the destination and escape any reserved keywords. You might want to override this behavior if you have queries that are case sensitive and expect the case of the source.

When configuring a Snowflake endpoint, you can select the option to Enclose all target table and column names in double quotes to preserve the case. The following table uses a reserved keyword, CONSTRAINT, to illustrate the results in the destination and the impact on the SQL query.

Case preserved Name in source Name in target SQL query
No Constraint "CONSTRAINT" SELECT * FROM “CONSTRAINT”
Yes Constraint "Constraint" SELECT * FROM “Constraint”