Tipos de dados compatíveis
A tabela a seguir mostra os tipos de dados de origem compatíveis do PostgreSQL e seu mapeamento padrão para tipos de dados do Gateway Data Movement.
Ao replicar para um destino baseado em PostgreSQL, os tipos de dados de origem e de destino são os mesmos, exceto as exceções descritas em Replicação homogênea.
Para obter informações sobre como visualizar o tipo de dados mapeado no destino, consulte a seção referente ao conector de destino você está usando.
Tipos de dados PostgreSQL | Tipos de dados do Gateway Data Movement |
---|---|
INTEGER |
INT4 |
SMALLINT |
INT2 |
BIGINT |
INT8 |
NUMERIC |
NUMERIC(28,6) |
NUMERIC(p,s) |
Se a precisão for =< 38, então: NUMERIC(p,s) Se a precisão for => 39, então: STRING |
DECIMAL |
NUMERIC(28,6) |
DECIMAL(p,s) |
Se a precisão for =< 38, então: NUMERIC(p,s) Se a precisão for => 39, então: STRING |
REAL |
REAL4 |
DOUBLE |
REAL8 |
SMALLSERIAL |
INT2 |
SERIAL |
INT4 |
BIGSERIAL |
INT8 |
MONEY |
NUMERIC(38,4) Nota informativa
O tipo de dados MONEY é mapeado para FLOAT no Microsoft SQL Server. |
CHAR |
WSTRING (1) |
CHAR(n) |
WSTRING (n) |
VARCHAR(n) Nota informativa
VARCHAR sem comprimento (n) não é reconhecido como um tipo de dados válido pelos pontos de extremidade de destino. Consequentemente, se um tipo de dados de coluna de origem for definido como VARCHAR sem um comprimento explícito, o Gateway Data Movement definirá um comprimento padrão de 8.000 bytes. Você pode alterar o padrão definindo o seguinte parâmetro interno para o comprimento necessário: unboundedVarcharMaxSize Para obter informações sobre como definir parâmetros internos, consulte PostgreSQL. |
WSTRING (n) |
TEXT |
NCLOB |
BYTEA |
BLOB |
TIMESTAMP |
DATETIME |
TIMESTAMP (z) |
DATETIME |
DATE Nota informativaO Gateway Data Movement oferece suporte apenas para formatos DATE textuais formatados em ISO (o padrão). Se outros formatos forem utilizados, um erro será gerado. Você pode alterar o formato da data no arquivo postgresql.conf ou usando a variável de ambiente PGDATESTYLE. Também pode alterar o formato da data no nível do banco de dados.
|
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 Nota informativa
A leitura e gravação de dados JSON são realizadas usando string ampla (em que cada caractere ocupa 2 bytes). Portanto, ao replicar colunas JSON para um destino PostgreSQL, defina o tamanho limitado da LOB como duas vezes o comprimento máximo do JSON. Portanto, por exemplo, se os dados JSON tiverem 4 KB, defina o valor limitado do tamanho do lob como 8 KB. |
NCLOB |
JSONB Nota informativa
A leitura e gravação de dados JSONB são realizadas usando string ampla (em que cada caractere ocupa 2 bytes). Portanto, ao replicar colunas JSONB para um destino PostgreSQL, defina o tamanho limitado da LOB como duas vezes o comprimento máximo do JSONB. Portanto, por exemplo, se os dados JSONB tiverem 4 KB, defina o valor limitado do tamanho do lob como 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 |
Se o comprimento for especificado: WSTRING (LENGTH) Se nenhum comprimento for especificado: WSTRING (8000) |
TINTERVAL |
WSTRING(255) |