Ondersteunde gegevenstypen
De volgende tabel toont de PostgreSQL-brongegevenstypen en de standaard toewijzingen voor Data Movement gateway-gegevenstypen.
Bij het repliceren naar een PostgreSQL-doel, zijn de bron- en doelgegevenstypen hetzelfde, afgezien van de uitzonderingen die worden beschreven in Homogene replicatie.
Voor informatie over hoe u het gegevenstype kunt bekijken dat is gekoppeld in het doel, raadpleegt u de sectie voor de doelconnector die u gebruikt.
PostgreSQL-gegevenstypen | Data Movement gateway-gegevenstypen |
---|---|
INTEGER |
INT4 |
SMALLINT |
INT2 |
BIGINT |
INT8 |
NUMERIC |
NUMERIC(28,6) |
NUMERIC(p,s) |
Als precisie =< 38, dan: NUMERIC(p,s) Als precisie => 39, dan: STRING |
DECIMAL |
NUMERIC(28,6) |
DECIMAL(p,s) |
Als precisie =< 38, dan: NUMERIC(p,s) Als precisie => 39, dan: STRING |
REAL |
REAL4 |
DOUBLE |
REAL8 |
SMALLSERIAL |
INT2 |
SERIAL |
INT4 |
BIGSERIAL |
INT8 |
MONEY |
NUMERIC(38,4) Informatie
Het MONEY-gegevenstype wordt toegewezen aan FLOAT in Microsoft SQL Server. |
CHAR |
WSTRING (1) |
CHAR(n) |
WSTRING (n) |
VARCHAR(n) Informatie
VARCHAR zonder een lengte (n) wordt door doeleindpunten niet herkend als een geldig gegevenstype. Dus als een gegevenstype van een bronkolom wordt ingesteld op VARCHAR zonder een expliciete lengte, stelt Data Movement gateway een standaardlengte van 8000 bytes in. U kunt de standaardinstelling wijzigen door de volgende interne parameter in te stellen op de vereiste lengte: unboundedVarcharMaxSize Voor informatie over het instellen van interne parameters gaat u naar PostgreSQL. |
WSTRING (n) |
TEXT |
NCLOB |
BYTEA |
BLOB |
TIMESTAMP |
DATETIME |
TIMESTAMP (z) |
DATETIME |
DATE InformatieData Movement gateway ondersteunt alleen ISO-geformatteerde tekstuele DATE-notaties (standaardinstelling). Als er andere notaties worden gebruikt, wordt er een fout gegenereerd. U kunt de datumnotatie wijzigen in het postgresql.conf bestand om de omgevingsvariabele PGDATESTYLE gebruiken. U kunt de datumnotatie ook op databaseniveau wijzigen.
|
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 Informatie
Het lezen en schrijven van JSON-gegevens wordt uitgevoerd met een brede tekenreeks (waarbij elk teken 2 bytes inneemt). Stel de beperkte LOB-grootte daarom in op twee keer de maximale JSON-lengte als u JSON-kolommen naar een PostgreSQL-doel gaat repliceren. Als bijvoorbeeld de JSON-gegevens 4 KB zijn, stel de beperkte LOB-grootte dan in op 8 KB. |
NCLOB |
JSONB Informatie
Het lezen en schrijven van JSONB-gegevens wordt uitgevoerd met een brede tekenreeks (waarbij elk teken 2 bytes inneemt). Stel de beperkte LOB-grootte daarom in op twee keer de maximale JSONB-lengte als u JSONB-kolommen naar een PostgreSQL-doel gaat repliceren. Als bijvoorbeeld de JSONB-gegevens 4 KB zijn, stel de beperkte LOB-grootte dan in op 8 KB. |
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 |
Als de lengte is opgegeven: WSTRING (LENGTH) Als er geen lengte is opgegeven: WSTRING (8000) |
TINTERVAL |
WSTRING(255) |