SnowConvert AI - Serveur SQL-Azure Synapse - Types de données

Snowflake prend en charge la plupart des types de données de base SQL (avec quelques restrictions) pour une utilisation en colonnes, variables locales, expressions, paramètres, et tout autre emplacement approprié.

Applies to
  • SQL Server

  • Azure Synapse Analytics

Numériques exacts et approximatifs

T-SQL

Snowflake

Remarques

BIGINT

BIGINT

​Remarque : BIGINT dans Snowflake est un alias pour NUMBER(38,0)

[Voir la note sur cette conversion ci-dessous.]

BIT

BOOLEAN

SQLServer accepte uniquement ​1, 0, ou NULL

DECIMAL

DECIMAL

​DECIMAL de Snowflake est synonyme de NUMBER

FLOAT

FLOAT

​Ce type de données se comporte de la même manière sur les deux systèmes.

Précision 7-15 chiffres, flottant (1-24)

Stockage 4 - 8 octets, flottant (25-53)

INT

INT

Remarque : INT dans Snowflake est un alias pour NUMBER(38,0)

[Voir la note sur cette conversion ci-dessous.]

MONEY

NUMBER(38, 4)

[Voir la note sur cette conversion ci-dessous.]

REAL​

REAL

REAL de Snowflake est synonyme de FLOAT

SMALLINT

SMALLINT​

​Ce type de données se comporte de la même manière

SMALLMONEY

NUMBER(38, 4)

[Voir la note sur cette conversion ci-dessous.]

TINYINT​

TINYINT

Remarque : TINYINT dans Snowflake est un alias pour NUMBER(38,0)

[Voir la note sur cette conversion ci-dessous.]

NUMERIC

NUMERIC

​NUMERIC de Snowflake est synonyme de NUMBER

NOTE:

  • Pour la conversion des types de données entiers (INT, SMALLINT, BIGINT, TINYINT), chacun est converti en alias dans Snowflake avec le même nom. Chacun de ces alias est en fait converti en NUMBER(38,0), un type de données considérablement plus grand que le type de données des entiers. Vous trouverez ci-dessous une comparaison de la gamme de valeurs pouvant être présentes dans chaque type de données :

    • Snowflake NUMBER(38,0) : -99999999999999999999999999999999999999 à +99999999999999999999999999999999999999

    • SQLServerTINYINT : 0 à 255

    • SQLServer INT : -2^31 (-2 147 483 648) à 2^31-1 (2 147 483 647)

    • SQLServer BIGINT : -2^63 (-9 223 372 036 854 775 808) à 2^63-1 (9 223 372 036 854 775 807)

    • SQLServer SMALLINT : -2^15 (-32 768) à 2^15-1 (32 767)

  • Pour Money et Smallmoney : ​

    • Il n’est pas nécessaire de mettre les données monétaires entre guillemets simples ( “ ). Il est important de se rappeler que si vous pouvez spécifier des valeurs monétaires précédées d’un symbole de devise, le serveur SQL ne stocke aucune information monétaire associée au symbole, il ne stocke que la valeur numérique.

    • Faites attention pour traduire les DMLs

Date et heure

T-SQL

Snowflake

Remarques

DATE

DATE

​SQLServer accepte la plage de 0001-01-01 à 9999-12-31

DATETIME2

TIMESTAMP_NTZ(7)​

DATETIME de Snowflake est un alias de TIMESTAMP_NTZ

DATETIME

TIMESTAMP_NTZ(3)

DATETIME de Snowflake est un alias de TIMESTAMP_NTZ​

DATETIMEOFFSET

TIMESTAMP_TZ(7)

<p>La précision de l’horodatage de Snowflake est comprise entre 0 et 9 (<em>cette valeur est celle par défaut</em>)</p><p>Les opérations de Snowflake sont effectuées dans le fuseau horaire de la session en cours, contrôlé par le paramètre de session TIMEZONE</p>

SMALLDATETIME

TIMESTAMP_NTZ

Snowflake’s DATETIME truncates the TIME information

That is, 1955-12-13 12:43:10 is saved as 1955-12-13

TIME

TIME

<p>Ce type de données se comporte de la même manière sur les deux systèmes.</p><p>Plage de 00:00:00.0000000 à 23:59:59.9999999</p>

TIMESTAMP

BINARY(8)

SQL Server timestamp is a synonym for rowversion and stores a unique BINARY(8) value, not a date/time type. See SSC-FDM-TS0046.

Chaînes de caractères

T-SQL

Snowflake

Remarques

CHAR

CHAR

​La taille maximale de la chaîne en octets de SQLServer est de 8 000, alors que celle de Snowflake est de 167 772 161.

TEXT​

TEXT

VARCHAR​

VARCHAR

SQLServer’s max string size in bytes is 8000 whereas Snowflake is 167772161. SQLServer’s VARCHAR(MAX) has no equivalent in Snowflake, it is converted to VARCHAR to take the largest possible size by default.

Chaînes de caractères Unicode

T-SQL

Snowflake

Remarques

NCHAR

NCHAR

Synonyme de VARCHAR sauf que la longueur par défaut est VARCHAR(1).

NTEXT

TEXT

Snowflake uses TEXT data type as a synonym for VARCHAR

​SQLServer’s NTEXT(MAX) has no equivalent in Snowflake, it is converted to VARCHAR to take the largest possible size by default.

NVARCHAR

VARCHAR

Snowflake uses this data type as a synonym for VARCHAR

​SQLServer’s NVARCHAR(MAX) has no equivalent in Snowflake, it is converted to VARCHAR to take the largest possible size by default.

Chaînes binaires

T-SQL

Snowflake

Remarques

BINARY

​BINARY

Dans Snowflake, la longueur maximale est de 8 MB (8 388 608 octets) et la longueur est toujours mesurée en termes d’octets.

VARBINARY

VARBINARY

Snowflake uses this data type as a synonym for BINARY.

Snowflake often represents each byte as 2 hexadecimal characters

IMAGE

VARBINARY

​Snowflake uses this data type as a synonym for BINARY.

Snowflake often represents each byte as 2 hexadecimal characters

Autres types de données

T-SQL

Snowflake

Remarques

CURSOR

*à définir

<p>Non pris en charge par Snowflake.</p><p>Traduire dans les assistants de curseur</p>

HIERARCHYID

*à définir

Non pris en charge par Snowflake

SQL_VARIANT

VARIANT

<p>Taille maximale de 16 MB compressée.</p><p>Une valeur de n’importe quel type de données peut être implicitement convertie en valeur VARIANT</p>

GEOMETRY

*à définir

Non pris en charge par Snowflake

GEOGRAPHY

GEOGRAPHY

Les objets stockés dans le type de données GEOGRAPHY de Snowflake doivent être des objets géospatiaux WKT / WKB / EWKT / EWKB / GeoJSON pour prendre en charge les objets LineString et Polygon

TABLE

*à définir

Non pris en charge par Snowflake

ROWVERSION

BINARY(8)

SQL Server rowversion auto-generates a unique binary value on each INSERT/UPDATE. Snowflake BINARY(8) does not replicate this behavior. See SSC-FDM-TS0046.

UNIQUEIDENTIFIER

VARCHAR

​​Snowflake uses STRING type as a synonym for VARCHAR.
Because of conversion
Snowflake often represents each byte as 2 hexadecimal characters

XML

VARIANT

​Snowflake uses VARIANT data type as a synonym for XML

SYSNAME

VARCHAR(128)

Contrainte NOT NULL ajoutée à la définition de la colonne