Menu
AWS Schema Conversion Tool
User Guide (Version 1.0)

Oracle to PostgreSQL Supported Schema Conversion

The following sections list the schema elements from an Oracle database and whether they are supported for automatic conversion to PostgreSQL using the AWS Schema Conversion Tool.

DDL

Statements

Clause Automatically Converted Details

ALTER CLUSTER

No

ALTER DATABASE

No

ALTER DIMENSION

No

ALTER DISKGROUP

No

ALTER FLASHBACK ARCHIVE

No

ALTER FUNCTION

No

ALTER TABLESPACE

No

CREATE [OR REPLACE] FUNCTION

Yes

CREATE [TEMPORARY] TABLESPACE

No

CREATE CLUSTER

No

CREATE CONTEXT

No

CREATE CONTROLFILE

No

CREATE DATABASE

Yes

CREATE DATABASE LINK

No

CREATE DIMENSION

No

CREATE DIRECTORY

No

CREATE DISKGROUP

No

CREATE FLASHBACK ARCHIVE

No

DROP CLUSTER

No

DROP DATABASE

No

DROP DATABASE LINK

No

DROP DIMENSION

No

DROP DIRECTORY

No

DROP DISKGROUP

No

DROP FLASHBACK ARCHIVE

No

DROP FUNCTION

No

DROP TABLE

No

DROP TABLESPACE

No

DROP VIEW

Yes

ALTER TABLE

Clause Automatically Converted Details

ADD CONSTRAINT

Yes

ADD column

No

DEALLOCATE UNUSED

No

DISCARD/IMPORT TABLESPACE

No

DROP CONSTRAINT

No

ENABLE/DISABLE constraint

No

ENABLE/DISABLE triggers

No

MODIFY

No

MODIFY COLUMN

No

PARTITION operations

No

REMOVE PARTITIONING

No

RENAME

No

RENAME COLUMN

No

CREATE [OR REPLACE] VIEW Statement

Clause Automatically Converted Details

FORCE

Yes

NOFORCE

Yes

READ ONLY

Yes

Updatable Views

Yes

WITH OBJECT IDENTIFIER

Yes

CREATE INDEX Statement

CREATE TABLE

Clause Automatically Converted Details

Clustered tables

No

Issue 5199: PostgreSQL doesn't support CLUSTERED TABLE

External table

No

Issue 5200: PostgreSQL doesn't support EXTERNAL TABLES

Function as default value for column

Yes

Object table

No

Issue 5196: PostgreSQL doesn't support OBJECT TABLE

Partitioned table

No

Issue 5201: PostgreSQL doesn't support all partition types

Regular tables

Yes

Temporary tables

Partial

Issue 5198: PostgreSQL doesn't support GLOBAL TEMPORARY TABLE

Sequences

Clause Automatically Converted Details

CREATE

Yes

Using

Yes

DML

Built-in SQL Functions

Aggregate Functions

Clause Automatically Converted Details

AVG

Yes

COLLECT

No

Issue 5340: PostgreSQL doesn't support the %s function

CORR

No

Issue 5340: PostgreSQL doesn't support the %s function

CORR_*

No

Issue 5340: PostgreSQL doesn't support the %s function

COUNT

Yes

COVAR_POP

No

Issue 5340: PostgreSQL doesn't support the %s function

COVAR_SAMP

No

Issue 5340: PostgreSQL doesn't support the %s function

CUME_DIST

No

Issue 5340: PostgreSQL doesn't support the %s function

DENSE_RANK

No

Issue 5340: PostgreSQL doesn't support the %s function

FIRST

No

Issue 5340: PostgreSQL doesn't support the %s function

GROUP_ID

No

Issue 5340: PostgreSQL doesn't support the %s function

GROUPING

No

Issue 5340: PostgreSQL doesn't support the %s function

GROUPING_ID

No

Issue 5340: PostgreSQL doesn't support the %s function

LAST

No

Issue 5340: PostgreSQL doesn't support the %s function

MAX

Yes

MEDIAN

No

Issue 5340: PostgreSQL doesn't support the %s function

MIN

No

Issue 5340: PostgreSQL doesn't support the %s function

PERCENT_RANK

No

Issue 5340: PostgreSQL doesn't support the %s function

PERCENTILE_CONT

No

Issue 5340: PostgreSQL doesn't support the %s function

PERCENTILE_DISC

No

Issue 5340: PostgreSQL doesn't support the %s function

RANK

No

Issue 5340: PostgreSQL doesn't support the %s function

REGR_ (Linear Regression) Functions

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_BINOMIAL_TEST

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_CROSSTAB

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_F_TEST

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_KS_TEST

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_MODE

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_MW_TEST

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_ONE_WAY_ANOVA

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_T_TEST_*

No

Issue 5340: PostgreSQL doesn't support the %s function

STATS_WSR_TEST

No

Issue 5340: PostgreSQL doesn't support the %s function

STDDEV

No

Issue 5340: PostgreSQL doesn't support the %s function

STDDEV_POP

No

Issue 5340: PostgreSQL doesn't support the %s function

STDDEV_SAMP

No

Issue 5340: PostgreSQL doesn't support the %s function

SUM

Yes

VAR_POP

No

Issue 5340: PostgreSQL doesn't support the %s function

VAR_SAMP

No

Issue 5340: PostgreSQL doesn't support the %s function

VARIANCE

No

Issue 5340: PostgreSQL doesn't support the %s function

Analytic Functions

Clause Automatically Converted Details

AVG *

Yes

CORR *

No

Issue 5340: PostgreSQL doesn't support the %s function

COUNT *

Yes

COVAR_POP *

Yes

COVAR_SAMP *

Yes

CUME_DIST

Yes

DENSE_RANK

Yes

FIRST

No

Issue 5340: PostgreSQL doesn't support the %s function

FIRST_VALUE *

Yes

LAG

Yes

LAST

No

Issue 5340: PostgreSQL doesn't support the %s function

LAST_VALUE *

Yes

LEAD

Yes

MAX *

Yes

MIN *

Yes

NTILE

Yes

PERCENT_RANK

Yes

PERCENTILE_CONT

Yes

PERCENTILE_DISC

Yes

RANK

Yes

RATIO_TO_REPORT

No

Issue 5340: PostgreSQL doesn't support the %s function

REGR_ (Linear Regression) Functions *

No

Issue 5340: PostgreSQL doesn't support the %s function

ROW_NUMBER

Yes

STDDEV *

Yes

STDDEV_POP *

Yes

STDDEV_SAMP *

Yes

SUM *

Yes

VAR_POP *

No

Issue 5340: PostgreSQL doesn't support the %s function

VAR_SAMP *

No

Issue 5340: PostgreSQL doesn't support the %s function

VARIANCE *

Yes

Character Functions Returning Character Values

Clause Automatically Converted Details

CHR(num)

Yes

CONCAT(char1, char2)

Yes

INITCAP(string)

Yes

LOWER(string)

Yes

LPAD(string, len)

Yes

LPAD(string, len, pad)

Yes

LTRIM(string)

Yes

NLS_INITCAP

No

Issue 5340: PostgreSQL doesn't support the %s function

NLS_LOWER

No

Issue 5340: PostgreSQL doesn't support the %s function

NLS_UPPER

No

Issue 5340: PostgreSQL doesn't support the %s function

NLSSORT

No

Issue 5340: PostgreSQL doesn't support the %s function

REGEXP_REPLACE

No

Issue 5340: PostgreSQL doesn't support the %s function

REGEXP_SUBSTR

No

Issue 5340: PostgreSQL doesn't support the %s function

REPLACE(str, search)

Yes

REPLACE(str, search, replace)

Yes

RPAD(string, len)

Yes

RTRIM(string)

Yes

RTRIM(string, set)

Yes

SOUNDEX(string)

Yes

SUBSTR(string, pos, len)

Yes

TRANSLATE(string, from, to)

Yes

TREAT

No

Issue 5340: PostgreSQL doesn't support the %s function

TRIM([type trim FROM] string)

Yes

UPPER(string)

Yes

Character Functions Returning Number Values

Clause Automatically Converted Details

ASCII(str)

Yes

INSTR(str, substr)

Yes

INSTR(str, substr, pos)

Implemented in Extension Library

INSTR(str, substr, pos, num)

Implemented in Extension Library

LENGTH(string)

Yes

REGEXP_INSTR

No

Issue 5340: PostgreSQL doesn't support the %s function

Collection Functions

Conversion Functions

Clause Automatically Converted Details

ASCIISTR(string)

Implemented in Extension Library

BIN_TO_NUM(bit1, bit2, …)

Yes

CAST

Yes

CHARTOROWID

No

Issue 5340: PostgreSQL doesn't support the %s function

COMPOSE

No

Issue 5340: PostgreSQL doesn't support the %s function

CONVERT(string, charset)

No

Issue 5340: PostgreSQL doesn't support the %s function

DECOMPOSE

No

Issue 5340: PostgreSQL doesn't support the %s function

HEXTORAW

Yes

NUMTODSINTERVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

NUMTOYMINTERVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

RAWTOHEX

Yes

RAWTONHEX

Yes

ROWIDTOCHAR

No

Issue 5340: PostgreSQL doesn't support the %s function

ROWIDTONCHAR

No

Issue 5340: PostgreSQL doesn't support the %s function

SCN_TO_TIMESTAMP

Yes

TIMESTAMP_TO_SCN

Yes

TO_BINARY_DOUBLE

Yes

TO_BINARY_FLOAT

Yes

TO_CHAR (character)

Yes

TO_CHAR (datetime, format)

Yes

TO_CHAR (number, format)

Implemented in Extension Library

TO_CLOB

Yes

TO_DATE

Implemented in Extension Library

TO_DSINTERVAL

Yes

TO_LOB

Yes

TO_MULTI_BYTE

Yes

TO_NCHAR (character)

Yes

TO_NCHAR (datetime)

Implemented in Extension Library

TO_NCHAR (number)

Implemented in Extension Library

TO_NCLOB

Implemented in Extension Library

TO_NUMBER

Implemented in Extension Library

TO_SINGLE_BYTE

No

Issue 5340: PostgreSQL doesn't support the %s function

TRANSLATE ... USING

No

Issue 5340: PostgreSQL doesn't support the %s function

UNISTR

Implemented in Extension Library

Data Mining Functions

Datetime Functions

Clause Automatically Converted Details

ADD_MONTHS(date, num)

Implemented in Extension Library

CURRENT_DATE

Yes

CURRENT_TIMESTAMP

Yes

DBTIMEZONE

No

Issue 5340: PostgreSQL doesn't support the %s function

EXTRACT(DAY FROM date)

Yes

EXTRACT(HOUR FROM time)

Yes

EXTRACT(MINUTE FROM time)

Yes

EXTRACT(MONTH FROM date)

Yes

EXTRACT(SECOND FROM time)

Yes

EXTRACT(YEAR FROM date)

Yes

FROM_TZ

Implemented in Extension Library

LAST_DAY(date)

Implemented in Extension Library

LOCALTIMESTAMP

Yes

LOCALTIMESTAMP([prec])

Yes

MONTHS_BETWEEN(date1, date2)

Yes

NEW_TIME

No

Issue 5340: PostgreSQL doesn't support the %s function

NEXT_DAY

Implemented in Extension Library

NUMTODSINTERVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

NUMTOYMINTERVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

ROUND (date)

No

Issue 5340: PostgreSQL doesn't support the %s function

SESSIONTIMEZONE

Yes

SYS_EXTRACT_UTC

No

Issue 5340: PostgreSQL doesn't support the %s function

SYSDATE

Yes

SYSTIMESTAMP

Yes

TO_CHAR (datetime, format)

Yes

TO_DSINTERVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

TO_TIMESTAMP(exp)

No

Issue 5340: PostgreSQL doesn't support the %s function

TO_TIMESTAMP_TZ

No

Issue 5340: PostgreSQL doesn't support the %s function

TO_YMINTERVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

TRUNC (datetime)

No

Issue 5340: PostgreSQL doesn't support the %s function

TZ_OFFSET

No

Issue 5340: PostgreSQL doesn't support the %s function

dbms_output

Clause Automatically Converted Details

dbms_output.put()

Yes

dbms_output.put_line()

Yes

Encoding and Decoding Functions

Environment and Identifier Functions

General Comparison Functions

Clause Automatically Converted Details

GREATEST(exp, exp2, …)

Yes

LEAST(exp, exp2, …)

Yes

Hierarchical Functions

Clause Automatically Converted Details

SYS_CONNECT_BY_PATH

No

Issue 5340: PostgreSQL doesn't support the %s function

Large Object Functions

Clause Automatically Converted Details

BFILENAME

No

Issue 5340: PostgreSQL doesn't support the %s function

EMPTY_BLOB, EMPTY_CLOB

No

Issue 5340: PostgreSQL doesn't support the %s function

Model Functions

NLS Character Functions

NULL-Related Functions

Clause Automatically Converted Details

COALESCE(exp1, exp2, …)

Yes

LNNVL

No

Issue 5340: PostgreSQL doesn't support the %s function

NULLIF(exp1, exp2)

Yes

NVL(exp, replacement)

Yes

NVL2(exp1, exp2, exp3)

Yes

Numeric Functions

Clause Automatically Converted Details

ABS(num)

Yes

ACOS(num)

Yes

ASIN(num)

Yes

ATAN(num)

Yes

ATAN2(x,y)

Yes

BITAND(exp1, exp2)

Yes

CEIL(num)

Yes

COS(num)

Yes

COSH(num)

Yes

EXP(n)

Yes

FLOOR(num)

Yes

LN(num)

Yes

LOG(num1, num2)

Yes

MOD(dividend, divisor)

Yes

NANVL(n2, n1)

No

Issue 5340: PostgreSQL doesn't support the %s function

POWER(value, n)

Yes

REMAINDER(n1, n2)

Yes

ROUND (num, integer)

Yes

SIGN(exp)

Yes

SIN(num)

Yes

SINH(num)

Yes

SQRT(num)

Yes

TAN(num)

Yes

TANH(num)

Yes

TRUNC (number)

Yes

WIDTH_BUCKET

Yes

Object Reference Functions

XML Functions

Clause Automatically Converted Details

APPENDCHILDXML

No

Issue 5340: PostgreSQL doesn't support the %s function

DELETEXML

No

Issue 5340: PostgreSQL doesn't support the %s function

DEPTH

No

Issue 5340: PostgreSQL doesn't support the %s function

EXISTSNODE

No

Issue 5340: PostgreSQL doesn't support the %s function

EXTRACT (XML)

No

Issue 5340: PostgreSQL doesn't support the %s function

EXTRACTVALUE

No

Issue 5340: PostgreSQL doesn't support the %s function

INSERTCHILDXML

No

Issue 5340: PostgreSQL doesn't support the %s function

INSERTXMLBEFORE

No

Issue 5340: PostgreSQL doesn't support the %s function

PATH

No

Issue 5340: PostgreSQL doesn't support the %s function

SYS_DBURIGEN

No

Issue 5340: PostgreSQL doesn't support the %s function

SYS_XMLAGG

No

Issue 5340: PostgreSQL doesn't support the %s function

SYS_XMLGEN

No

Issue 5340: PostgreSQL doesn't support the %s function

UPDATEXML

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLAGG

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLCDATA

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLCOLATTVAL

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLCOMMENT

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLCONCAT

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLFOREST

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLPARSE

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLPI

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLQUERY

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLROOT

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLSEQUENCE

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLSERIALIZE

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLTABLE

No

Issue 5340: PostgreSQL doesn't support the %s function

XMLTRANSFORM

No

Issue 5340: PostgreSQL doesn't support the %s function

Hints

Joins

Clause Automatically Converted Details

Cross Joins

Yes

Inner Joins

Yes

Outer Joins

Yes

Operators and Date Functions

Clause Automatically Converted Details

Arithmetic operators

Yes

Concatenation operators

Yes

Predicates

Clause Automatically Converted Details

Boolean conditions

Yes

Comparison conditions: '=, <>, <, <=, >, >=, ANY, SOME, ALL

Yes

Exists conditions

Yes

In conditions

Yes

Null conditions

Yes

Pattern matching conditions

Yes

Range conditions

Yes

Set operators

Concatenation operators

Clause Automatically Converted Details

INTERSECT, EXCEPT

Yes

MINUS

Yes

UNION, UNION ALL

Yes

Statements

DELETE

Clause Automatically Converted Details

DELETE FROM MATERIALIZED VIEW

No

Issue 5095: PostgreSQL doesn't support using a materialized VIEW

DELETE FROM SUBQUERY

No

Issue 5068: PostgreSQL doesn't support the DELETE statement for a subquery

DELETE FROM TABLE

Yes

DELETE FROM VIEW

Yes

DELETE with Error Logging clause

No

Issue 5067: PostgreSQL doesn't support the DELETE statement with the ERROR LOG option

DELETE with RETURNING clause

Yes

HIERARCHICAL QUERY AND HIERARCHICAL QUERY PSEUDOCOLUMNS

Clause Automatically Converted Details

CONNECT BY CLAUSE

Yes

CONNECT BY NOCYCLE

No

Issue 5586: Automatic conversion for queries with NOCYCLE clause not supported

CONNECT_BY_ISLEAF pseudocolumn

Yes

LEVEL PSEUDOCOLUMN

Yes

ORDER SIBLINGS BY

Yes

START WITH CLAUSE

Yes

SYS_CONNECT_BY_PATH

Yes

Hierarchical query operators

Clause Automatically Converted Details

CONNECT_BY_ROOT

Yes

PRIOR

Yes

INSERT

Clause Automatically Converted Details

ALL

Yes

DEFAULT

Yes

ELSE 

Yes

FIRST

Yes

INSERT from clause "SUBQUERY"

Yes

INSERT from clause "VALUES(...)"

Yes

INSERT INTO SUBQUERY

No

Issue 5071: PostgreSQL doesn't support the INSERT statement for a subquery

INSERT INTO TABLE

Yes

INSERT INTO VIEW

Yes

INSERT with partition_extension_clause

No

Issue 5024: PostgreSQL doesn't support the INSERT statement with partition_extension_clause

Inserting Into a Table with Error Logging clause

No

Issue 5070: PostgreSQL doesn't support the INSERT statement with the ERROR LOG option

RETURNING INTO

Yes

WHEN

Yes

LOCK TABLE

Clause Automatically Converted Details

Locking table in exclusive mode

Yes

Locking table in share mode

Yes

Locking without waiting

Yes

SELECT

Clause Automatically Converted Details

Add or subtract operators

Yes

BULK COLLECT INTO

No

Issue 5140: PostgreSQL doesn't support BULK COLLECT INTO

CUBE

No

Issue 5557: PostgreSQL doesn't support GROUPING SETS, CUBE, and ROLLUP functions

FOR UPDATE

No

Issue 5139: PostgreSQL doesn't support FOR UPDATE SKIP LOCKED

GROUP BY

Yes

GROUPING SETS

No

Issue 5557: PostgreSQL doesn't support GROUPING SETS, CUBE, and ROLLUP functions

HAVING

Yes

INTERSECT

Yes

INTO

Yes

MINUS

Yes

MODEL

No

Issue 5126: PostgreSQL doesn't support the MODEL statement

ORDER BY

Yes

PIVOT clause

No

Issue 5077: PostgreSQL doesn't support the PIVOT clause for the SELECT statement

ROLLUP

No

Issue 5557: PostgreSQL doesn't support GROUPING SETS, CUBE, and ROLLUP functions

ROWNUM pseudocolumn

Yes

SELECT ALL

Yes

SELECT DISTINCT

Yes

SELECT LIST

Yes

SELECT UNIQUE

Yes

UNION

Yes

UNION ALL

Yes

UNPIVOT clause

Yes

WHERE( field_name1,…,fieldnameN) IN (subquery_with_multiple_fields)

Yes

WHERE comparison_condition (=;<>;!=;<;>;>=;<=;ANY;SOME;ALL)

Yes

WHERE compound_condition_with_or_and_not

Yes

WHERE field_name BETWEEN arg1 AND arg2

Yes

WHERE field_name IN (const1,...,constN)

Yes

WHERE field_name IN (subquery)

Yes

WHERE like_condition (operator LIKE)

Yes

WITH

Yes

UPDATE

Clause Automatically Converted Details

UPDATE (subquery)

No

Issue 5065: PostgreSQL doesn't support the UPDATE statement for a subquery

UPDATE MATERIALIZED VIEW

No

Issue 5095: PostgreSQL doesn't support using a materialized VIEW

UPDATE TABLE

Yes

UPDATE VIEW

Yes

UPDATE with Error Logging clause

No

Issue 5064: PostgreSQL doesn't support the UPDATE statement with the ERROR LOG option

UPDATE with partition extension clause

No

Issue 5558: PostgreSQL doesn't support the UPDATE statement for a PARTITION

UPDATE with RETURNING…INTO clause

Yes

UPDATE with subqueries into SET-clause

Yes

UPDATE-operator which based on data from others tables

Yes

MERGE

Clause Automatically Converted Details

MERGE

No

Issue 5102: PostgreSQL doesn't support the MERGE statement

TRUNCATE TABLE

Yes

PLSQL

Arguments of functions and procedures

Clause Automatically Converted Details

Built-in datatype scalar arguments

Yes

Cursor-type arguments

Yes

Default clause in declaration of arguments

Yes

IN, OUT, IN OUT type of arguments

Yes

Ref cursor-type arguments

Yes

UDT collection-type arguments

Yes

UDT object-type arguments

Yes

UDT record-type

Yes

Functions

Clause Automatically Converted Details

Functions with DML

Yes

Functions without DML

Yes

Return pipelined table

Yes

Return ref cursor

Yes

Return scalar

Yes

Return table

Yes

Return UDT collection-type

Yes

Return UDT object-type

Yes

Return UDT record-type

Yes

Packages

Clause Automatically Converted Details

Global cursor declaration

No

Issue 5569: PostgreSQL only supports session variables using SQL standard date and time types

Global user exception declaration

No

Issue 5569: PostgreSQL only supports session variables using SQL standard date and time types

Initialization block BEGIN … END in packages

Yes

Package functions

Yes

Package procedures

Yes

Package variables

Yes

User type declaration

Yes

PL SQL constructions

Clause Automatically Converted Details

block EXCEPTION when exception_name then…

Yes

CASE_NOT_FOUND

Yes

case when conditions then…else… end case;

Yes

close cursor_variable

Yes

COMMIT

Yes

CURSOR_ALREADY_OPEN

Yes

DUP_VAL_ON_INDEX

Yes

execute immediate SQL_string_variable into variables_list use variables_list

No

Issue 5334: PostgreSQL doesn't support the dynamic SQL statement

fetch cursor_variable into variables_list

Yes

FORALL -cycle

No

Issue 5121: PostgreSQL doesn't support the FORALL statement

for I in(begN..endN) loop… end loop

Yes

for I in(cursor_name) loop… end loop

Yes

for I in(select_statement) loop… end loop

Yes

FOR i IN REVERSE begN..endN LOOP… END LOOP;

Yes

goto label;

No

Issue 5335: PostgreSQL doesn't support the GOTO operator

if conditions then…else if conditions then… end if;

Yes

if conditions then… end if;

Yes

INVALID_CURSOR

Yes

INVALID_NUMBER

Yes

LOGIN_DENIED

Yes

LOOP…exit when conditions; END LOOP;

Yes

NO_DATA_FOUND

Yes

NOT_LOGGED_ON

Yes

NULL Statement

Yes

open cursor_variable

Yes

open cursor_variable for select_statemet_string_variable

Yes

others

Yes

PRAGMA AUTONOMOUS_TRANSACTION

No

Issue 5350: The function can't use statements that explicitly or implicitly begin or end a transaction, such as START TRANSACTION, COMMIT, or ROLLBACK

PROGRAM_ERROR

Yes

raise_application_error(exept_code, message)

Yes

raise exeption_name

Yes

ROLLBACK

Yes

select…bulk collect into table_variable from table_name

No

Issue 5140: PostgreSQL doesn't support BULK COLLECT INTO

SQL%BULK_ROWCOUNT

No

SQL%FOUND

Yes

SQL%ISOPEN

No

Issue 5084: PostgreSQL doesn't support the cursor attribute %ISOPEN

SQL%NOTFOUND

Yes

SQL%ROWCOUNT

Yes

STORAGE_ERROR

Yes

TIMEOUT_ON_RESOURCE

Yes

TOO_MANY_ROWS

Yes

TRANSACTION_BACKED_OUT

Yes

VALUE_ERROR

Yes

while conditions loop… end loop;

Yes

ZERO_DIVIDE

Yes

PL SQL declaration block

Clause Automatically Converted Details

Declare built-in scalar variable

Yes

Declare ref-cursor variable

Yes

Declare static cursor

Yes

Declare UDT collection variable

Yes

Declare UDT object variable

Yes

Declare UDT record variable

Yes

Declare UDT array types

Yes

Declare user-exception

Yes

Declare with %rowtype option

Yes

Declare with %type option

Yes

Procedures

Clause Automatically Converted Details

CREATE PROCEDURE statement

Yes

Triggers

Clause Automatically Converted Details

BEFORE, AFTER - options

Yes

FOR EACH ROW -option

Yes

INSTEAD OF - options

Yes

NESTED TABLE - clause

No

Issue 5240: PostgreSQL doesn't support triggers on nested table columns in views

REFERENCING - clause

No

Issue 5238: PostgreSQL doesn't support the REFERENCING clauses

Statement-trigger

No

trigger on TABLE

Yes

Trigger on VIEW

Yes

WHEN(condition)- option

No

Data Types

Data type Automatically Converted to Details

BFILE

character varying

Issue 5212: PostgreSQL doesn't have a data type BFILE

BINARY_FLOAT

real

BINARY_DOUBLE

double precision

BLOB

bytea

CHAR(n)

character

CHARACTER(n)

character

CLOB

text

DATE

timestamp(0) without time zone

DECIMAL(p,s)

numeric

DEC(p,s)

numeric

FLOAT

double precision

INTEGER

numeric

INT

numeric

INTERVAL YEAR(p) TO MONTH

interval year to month

INTERVAL DAY(p) TO SECOND(s)

interval day to second(s)

LONG

text

LONG RAW

bytea

NCHAR(n)

character

NCHAR VARYING(n)

character varying

NCLOB

text

NUMBER(p)

numeric

NUMBER(p,0)

numeric

NUMBER(*,0)

numeric

NUMBER(p,s)

numeric

NUMBER(*)

double precision

NUMBER

double precision

NVARCHAR2(n)

character varying

RAW(n)

bytea

ROWID

character

Issue 5550: PostgreSQL doesn't have a data type ROWID

TIMESTAMP(p)

timestamp(p) without time zone

TIMESTAMP(p)

timestamp(6) without time zone

Issue 5213: PostgreSQL expands fractional seconds support for TIME, DATETIME, and TIMESTAMP values, with up to microseconds (6 digits) of precision

TIMESTAMP(p) WITH TIME ZONE

timestamp(p) with time zone

TIMESTAMP(p) WITH TIME ZONE

timestamp(6) with time zone

Issue 5552: PostgreSQL expands fractional seconds support for TIME, DATETIME, and TIMESTAMP values, with up to microseconds (6 digits) of precision

TIMESTAMP(p) WITH LOCAL TIME ZONE

timestamp(p) without time zone

TIMESTAMP(p) WITH LOCAL TIME ZONE

timestamp(6) without time zone

Issue 5553: PostgreSQL expands fractional seconds support for TIME, DATETIME, and TIMESTAMP values, with up to microseconds (6 digits) of precision

UROWID

character varying

Issue 5551: PostgreSQL doesn't have a data type UROWID

VARCHAR

character varying

VARCHAR2

character varying

XMLTYPE

xml

On this page: