Data Type Mapping for PostgreSQL
This section lists the mapping of data types for PostgreSQL.
PostgreSQL as Source
When PostgreSQL is used as a source location, following is the mapping of data types in PostgreSQL to the corresponding HVR repository data type.
PostgreSQL | HVR Capture Support | HVR Repository Data Type |
---|---|---|
smallint | Native | smallint |
integer | Native | integer |
int | Native | integer |
bigint | Native | bigint |
int2 | Native | smallint |
int4 | Native | integer |
int8 | Native | bigint |
decimal | Native | number |
numeric | Native | number |
double precision | Native | float |
real | Native | real |
smallserial | Native | smallint |
serial2 | Native | smallint |
serial | Native | integer |
bigserial | Native | bigint |
serial8 | Native | bigint |
time [without time zone] | Native | time |
time with time zone | Native | time with time zone |
timestamp [without time zone] | Native | postgres timestamp |
timestamp with time zone | Native | postgres timestamp with time zone |
date | Native | postgres date |
interval | Extended | <<interval>> |
char / character | Native | char |
varchar | Native | varchar or clob (if char length is large) |
text | Native | clob |
bytea | Native | blob |
json | Native | json |
jsonb | Native | jsonb |
boolean | Native | boolean |
money | Extended | <<money>> |
point | Extended | <<point>> |
line | Extended | <<line>> |
lseg | Extended | <<_lseg>> |
box | Extended | <<_box>> |
path | Extended | <<path>> |
polygon | Extended | <<polygon>> |
circle | Extended | <<circle>> |
cidr | Extended | <<cidr>> |
inet | Extended | <<inet>> |
macaddr | Extended | <<macaddr>> |
macaddr8 | Extended | <<macaddr8>> |
bit | Extended | <<bit>> |
bit varying / varbit | Extended | <<varbit>> |
tsvector | Extended | <<tsvector>> |
tsquery | Extended | <<tsquery>> |
uuid | Native | uniqueidentifier |
xml | Extended | <<xml>> |
int4range | Extended | <<int4range>> |
int8range | Extended | <<int8range>> |
numrange | Extended | <<numrange>> |
tsrange | Extended | <<tsrange>> |
tstzrange | Extended | <<tstzrange>> |
daterange | Extended | <<daterange>> |
oid | Extended | <<oid>> |
pg_lsn | Extended | <<pg_lsn>> |
domain | Extended | <<domain>> |
user defined | Extended | <<user defined>> |
PostgreSQL as Target
When PostgreSQL is used as a target location, following is the mapping of HVR repository data types to the corresponding data type in PostgreSQL.
Text in green cell indicates the native data type of the DBMS
HVR Repository Data Types | Attributes | PostgreSQL (UTF-8) |
---|---|---|
ansidate (ingres) | null=1 | date |
ansidate | null=1 | date |
bfile | null=1 | bytea |
bigint unsigned |
bytelen=8
null=1 | numeric(20) |
bigint |
bytelen=8
null=1 | bigint |
binary |
bytelen=10
null=1 | bytea |
binary_double |
bytelen=8
null=1 | float |
binary_float |
bytelen=4
null=1 | real |
bit (mysql) |
bitlen=32
null=1 | varchar(32) |
bit |
bytelen=1
null=1 | boolean |
blob | null=1 | bytea |
bool |
bytelen=1
null=1 | boolean |
boolean |
bytelen=1
null=1 | boolean |
byte varying |
bytelen=10
null=1 | bytea |
byte |
bytelen=10
null=1 | bytea |
byteint |
bytelen=1
null=1 | smallint |
c |
bytelen=10
encoding=UTF-8 null=1 | char(10) |
char |
bytelen=10
encoding=UTF-8 null=1 | char(10) |
char |
bytelen=4000
encoding=UTF-8 null=1 | char(4000) |
char |
bytelen=8000
encoding=UTF-8 null=1 | char(8000) |
char |
bytelen=40
charlen=10 encoding=UTF-8 null=1 | char(10) |
char |
bytelen=10
encoding=WINDOWS-1252 null=1 | char(10) |
char (oracle) |
bytelen=10
encoding=UTF-8 null=1 | char(10) |
char (oracle) |
bytelen=2000
encoding=UTF-8 null=1 | char(2000) |
char (oracle) |
bytelen=40
charlen=10 encoding=UTF-8 null=1 | char(10) |
char (oracle) |
bytelen=10
encoding=WINDOWS-1252 null=1 | char(10) |
clob |
encoding=UTF-8
null=1 | text |
date | null=1 | timestamp(0) |
date (hana) | null=1 | date |
date (mysql) | null=1 | date |
date (sybase) | null=1 | date |
datetime (bigquery) |
prec_sec=0
null=1 | timestamp(0) |
datetime (mysql) |
prec_sec=0
null=1 | timestamp(0) |
datetime (sybase) | null=1 | timestamp(3) |
datetime | null=1 | timestamp(3) |
datetime2 |
prec_sec=0
null=1 | timestamp(0) |
datetimeoffset |
prec_sec=0
null=1 | timestamp(0) with time zone |
db2 timestamp with time zone |
prec_sec=0
null=1 | timestamp(0) with time zone |
db2 xml |
encoding=UTF-8
null=1 | text |
dbclob |
charlen=0
null=1 | text |
decfloat |
prec=16
null=1 | varchar(42) |
decfloat |
prec=34
null=1 | varchar(42) |
decimal |
prec=10
scale=3 null=1 | numeric(10,3) |
decimal |
prec=6
null=1 | numeric(6) |
double |
bytelen=8
null=1 | float |
epoch |
prec_sec=0
null=1 | timestamp(0) |
float |
bytelen=8
null=1 | float |
float4 |
bytelen=4
null=1 | real |
float8 |
bytelen=8
null=1 | float |
float64 |
bytelen=8
null=1 | float |
graphic |
charlen=10
null=1 | char(10) |
image | null=1 | bytea |
image (sybase) | null=1 | bytea |
ingresdate | null=1 | timestamp(0) |
int unsigned |
bytelen=4
null=1 | bigint |
int |
bytelen=4
null=1 | integer |
integer |
bytelen=4
null=1 | integer |
integer1 |
bytelen=1
null=1 | smallint |
integer2 |
bytelen=2
null=1 | smallint |
integer4 |
bytelen=4
null=1 | integer |
integer8 |
bytelen=8
null=1 | bigint |
int64 |
bytelen=8
null=1 | bigint |
interval day to second (ingres) |
prec_sec=0
null=1 | timestamp(0) |
interval day to second |
prec_sec=0
prec_day=0 null=1 | timestamp(0) |
interval month to second |
prec_sec=0
null=1 | timestamp(0) |
interval year to month (ingres) | null=1 | timestamp(6) |
interval year to month |
prec_year=0
null=1 | timestamp(6) |
json | null=1 | json |
jsonb | null=1 | jsonb |
long byte | null=1 | bytea |
long char |
encoding=UTF-8
null=1 | char |
long nvarchar (db2) |
charlen=0
null=1 | text |
long nvarchar |
charlen=0
null=1 | text |
long raw | null=1 | bytea |
long varbinary | null=1 | bytea |
long varchar (db2) |
encoding=UTF-8
null=1 | text |
long varchar |
encoding=UTF-8
null=1 | text |
long |
encoding=UTF-8
null=1 | text |
mediumint unsigned |
bytelen=3
null=1 | integer |
mediumint |
bytelen=3
null=1 | integer |
money (ingres) | null=1 | numeric(14,2) |
money | null=1 | numeric(19,4) |
nchar |
charlen=10
null=1 | char(10) |
nchar (oracle) |
bytelen=20
charlen=10 null=1 | char(10) |
nclob |
charlen=0
null=1 | text |
ntext |
charlen=0
null=1 | text |
number |
scale=0
null=1 | numeric |
number |
prec=10
scale=-127 null=1 | float |
number |
prec=10
scale=3 null=1 | numeric(10,3) |
number |
prec=26
scale=0 null=1 | numeric(26) |
number |
prec=6
scale=0 null=1 | numeric(6) |
numeric (db2i) |
prec=10
scale=3 null=1 | numeric(10,3) |
numeric (db2i) |
prec=6
null=1 | numeric(6) |
numeric |
prec=10
scale=3 null=1 | numeric(10,3) |
numeric |
prec=26
null=1 | numeric(26) |
numeric |
prec=6
null=1 | numeric(6) |
nvarchar |
charlen=10
null=1 | varchar(10) |
nvarchar(max) |
charlen=0
null=1 | text |
nvarchar2 |
charlen=10
null=1 | varchar(10) |
postgres date | null=1 | date |
postgres timestamp with time zone |
prec_sec=0
null=1 | timestamp(0) with time zone |
postgres timestamp |
prec_sec=0
null=1 | timestamp(0) |
raw |
bytelen=10
null=1 | bytea |
real |
bytelen=4
null=1 | real |
rowid |
bytelen=18
charlen=18 encoding=US-ASCII null=1 | char(18) |
rowversion |
bytelen=10
null=1 | bytea |
smalldatetime | null=1 | timestamp(0) |
smallint unsigned |
bytelen=2
null=1 | integer |
smallint |
bytelen=2
null=1 | smallint |
smallmoney | null=1 | numeric(10,4) |
text (ingres) |
bytelen=10
encoding=UTF-8 null=1 | varchar(10) |
text (sqlserver) |
encoding=WINDOWS-1252
null=1 | text |
text(sybase) |
encoding=UTF-8
null=1 | text |
time (mysql) |
prec_sec=0
null=1 | time(0) |
time (hana) | null=1 | time(0) |
time (sybase) | null=1 | time(3) |
time with local time zone |
prec_sec=0
null=1 | time(0) |
time with time zone |
prec_sec=0
null=1 | time(0) with time zone |
time |
prec_sec=0
null=1 | time(0) |
time |
prec_sec=3
null=1 | time(3) |
time2 | null=1 | time(0) |
timestamp (bigquery) |
prec_sec=0
null=1 | timestamp(0) with time zone |
timestamp (db2) |
prec_sec=0
null=1 | timestamp(0) |
timestamp (hana) |
prec_sec=0
null=1 | timestamp(0) |
timestamp (ingres) |
prec_sec=0
null=1 | timestamp(0) |
timestamp (mysql) |
prec_sec=0
null=1 | timestamp(0) |
timestamp (oracle) |
prec_sec=0
null=1 | timestamp(0) |
timestamp (sqlserver) |
bytelen=10
null=1 | bytea |
timestamp (sybase) |
bytelen=10
null=1 | bytea |
timestamp with local time zone |
prec_sec=0
null=1 | timestamp(0) |
timestamp with local tz (oracle) |
prec_sec=0
null=1 | timestamp(0) |
timestamp with time zone |
prec_sec=0
null=1 | timestamp(0) with time zone |
timestamp with tz (oracle) |
prec_sec=0
null=1 | timestamp(0) with time zone |
timestamp |
prec_sec=0
null=1 | timestamp(0) |
tinyint signed |
bytelen=1
null=1 | smallint |
tinyint unsigned |
bytelen=1
null=1 | smallint |
tinyint |
bytelen=1
null=1 | smallint |
uniqueidentifier |
bytelen=16
null=1 | uuid |
unitext |
charlen=0
null=1 | text |
univarchar |
charlen=10
null=1 | varchar(10) |
unsigned bigint |
bytelen=8
null=1 | numeric(20) |
unsigned int |
bytelen=4
null=1 | bigint |
unsigned smallint |
bytelen=2
null=1 | integer |
urowid |
bytelen=100
charlen=100 encoding=US-ASCII null=1 | varchar(100) |
varbinary |
bytelen=10
null=1 | bytea |
varbinary (sybase) |
bytelen=10
null=1 | bytea |
varbinary(max) | null=1 | bytea |
varbyte |
bytelen=10
null=1 | bytea |
varchar |
bytelen=10
encoding=UTF-8 null=1 | varchar(10) |
varchar |
bytelen=8000
encoding=UTF-8 null=1 | varchar(8000) |
varchar |
bytelen=40
charlen=10 encoding=UTF-8 null=1 | varchar(10) |
varchar |
bytelen=10
encoding=WINDOWS-1252 null=1 | varchar(10) |
varchar (sybase) |
bytelen=10
encoding=UTF-8 null=1 | varchar(10) |
varchar (sybase) |
bytelen=8000
encoding=UTF-8 null=1 | varchar(8000) |
varchar (sybase) |
bytelen=40
charlen=10 encoding=UTF-8 null=1 | varchar(10) |
varchar (sybase) |
bytelen=10
encoding=WINDOWS-1252 null=1 | varchar(10) |
varchar(max) |
encoding=WINDOWS-1252
null=1 | text |
varchar2 |
bytelen=10
encoding=UTF-8 null=1 | varchar(10) |
varchar2 |
bytelen=40
charlen=10 encoding=UTF-8 null=1 | varchar(10) |
varchar2 |
bytelen=10
encoding=WINDOWS-1252 null=1 | varchar(10) |
vargraphic |
charlen=10
null=1 | varchar(10) |
xml |
charlen=0
null=1 | text |
year (mysql) | null=1 | smallint |