Accéder au contenu principal

Types de données pris en charge

Le tableau suivant indique les types de données sources PostgreSQL pris en charge et leur mappage par défaut vers les types de données Data Movement gateway.

Lors de la réplication vers une cible basée sur PostgreSQL, les types de données sources et cibles sont les mêmes, hormis les exceptions décrites à la section Réplication homogène.

Pour savoir comment voir le type de données mappé dans la cible, voir la section sur le connecteur cible utilisé.

Types de données pris en charge
Types de données PostgreSQL Types de données Data Movement gateway

INTEGER

INT4

SMALLINT

INT2

BIGINT

INT8

NUMERIC

NUMERIC(28,6)

NUMERIC(p,s)

Si précision est =< 38 :

NUMERIC(p,s)

Si précision est => 39 :

STRING

DECIMAL

NUMERIC(28,6)

DECIMAL(p,s)

Si précision est =< 38 :

NUMERIC(p,s)

Si précision est => 39 :

STRING

REAL

REAL4

DOUBLE

REAL8

SMALLSERIAL

INT2

SERIAL

INT4

BIGSERIAL

INT8

MONEY

NUMERIC(38,4)

Note Informations

Le type de données MONEY est mappé vers FLOAT dans Microsoft SQL Server.

CHAR

WSTRING (1)

CHAR(n)

WSTRING (n)

VARCHAR(n)

Note Informations

Le type de données VARCHAR sans longueur (n) n'est pas reconnu comme un type de données valide par les points de terminaison cibles. Par conséquent, si le type de données d'une colonne source est défini sur VARCHAR sans longueur explicite, Data Movement gateway définira une longueur par défaut égale à 8 000 octets.

Vous pouvez modifier la valeur par défaut en définissant le paramètre interne suivant sur la longueur requise :

unboundedVarcharMaxSize

Pour des informations sur la définition de paramètres internes, voir PostgreSQL.

WSTRING (n)

TEXT

NCLOB

BYTEA

BLOB

TIMESTAMP

DATETIME

TIMESTAMP (z)

DATETIME

DATE

Note InformationsData Movement gateway prend uniquement en charge les formats DATE textuels ISO (par défaut). Si d'autres formats sont utilisés, une erreur sera générée. Vous pouvez modifier le format de date dans le fichier postgresql.conf ou via la variable d'environnement PGDATESTYLE. Vous pouvez également modifier le format de date au niveau de la base de données.

DATE

TIME

TIME

TIME (z)

TIME

INTERVAL

STRING (128) - 1 YEAR, 2 MONTHS, 3 DAYS, 4 HOURS, 5 MINUTES, 6 SECONDS

BOOLEAN

BOOLEAN

ENUM

STRING (64)

CIDR

STRING (50)

INET

STRING (50)

MACADDR

STRING (18)

BIT (n)

STRING (n)

BIT VARYING (n)

STRING (n)

UUID

STRING

TSVECTOR

CLOB

TSQUERY

CLOB

XML

CLOB

POINT

STRING (255) "(x,y)"

LINE

STRING (255) "(x,y,z)"

LSEG

STRING (255) "((x1,y1),(x2,y2))"

BOX

STRING (255) "((x1,y1),(x2,y2))"

PATH

CLOB "((x1,y1),(xn,yn))"

POLYGON

CLOB "((x1,y1),(xn,yn))"

CIRCLE

STRING (255) "(x,y),r"

JSON

Note Informations

La lecture et l'écriture de données JSON sont effectuées via une chaîne large (dans laquelle chaque caractère occupe 2 octets). Par conséquent, lors de la réplication de colonnes JSON dans une cible PostgreSQL, définissez la taille de LOB limitée sur le double de la longueur JSON maximale. Par exemple, si les données JSON font 4 Ko, définissez la valeur de la taille de LOB limitée sur 8 Ko.

NCLOB

JSONB

Note Informations

La lecture et l'écriture de données JSONB sont effectuées via une chaîne large (dans laquelle chaque caractère occupe 2 octets). Par conséquent, lors de la réplication de colonnes JSONB dans une cible PostgreSQL, définissez la taille de LOB limitée sur le double de la longueur JSONB maximale. Par exemple, si les données JSONB font 4 Ko, définissez la valeur de la taille de LOB limitée sur 8 Ko.

NCLOB

ARRAY

NCLOB

COMPOSITE

NCLOB

INT4RANGE STRING (255)
INT8RANGE STRING (255)
NUMRANGE STRING (255)
TSRANGE STRING (255)
INT4MULTIRANGE STRING (255)
INT8MULTIRANGE STRING (255)
NUMMULTIRANGE STRING (255)
TSMULTIRANGE STRING (255)

CHARACTER VARYING

Si la longueur est spécifiée :

WSTRING (LENGTH)

Si aucune longueur n'est spécifiée :

WSTRING (8000)

TINTERVAL

WSTRING(255)

Note InformationsLe type de données PostGIS n'est pas pris en charge.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !