Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions sql/plsql/PlSqlParser.g4
Original file line number Diff line number Diff line change
Expand Up @@ -3616,7 +3616,7 @@ range_partitions
;

list_partitions
: PARTITION BY LIST '(' column_name ')' (
: PARTITION BY LIST '(' column_name (',' column_name)* ')' (
AUTOMATIC (STORE IN '(' tablespace (',' tablespace)* ')')?
)? (
'(' PARTITION partition_name? list_values_clause table_partition_description (
Expand Down Expand Up @@ -3778,7 +3778,10 @@ range_values_list
;

list_values_clause
: VALUES '(' (literal (',' literal)* | TIMESTAMP literal (',' TIMESTAMP literal)* | DEFAULT) ')'
: VALUES '(' (
(literal (',' literal)* | TIMESTAMP literal (',' TIMESTAMP literal)* | DEFAULT)
| '(' (literal (',' literal*) | TIMESTAMP literal (',' TIMESTAMP literal)* | DEFAULT) ')'
) ')'
;

table_partition_description
Expand Down
71 changes: 70 additions & 1 deletion sql/plsql/examples/create_table.sql
Original file line number Diff line number Diff line change
Expand Up @@ -291,4 +291,73 @@ CREATE TABLE "SMARTUP5X_ERP"."MDEAL_ORDER_CHARGED_PRODUCTS"
SUPPLEMENTAL LOG DATA (UNIQUE INDEX) COLUMNS,
SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS
)
PARTITION BY LIST ("COMPANY_ID") AUTOMATIC
PARTITION BY LIST ("COMPANY_ID") AUTOMATIC;

CREATE TABLE "SMARTUP5X_ERP"."MDEAL_DW_DEBTORS"
( "COMPANY_ID" NUMBER(20,0) NOT NULL ENABLE,
"FILIAL_ID" NUMBER(20,0) NOT NULL ENABLE,
"PERSON_ID" NUMBER(20,0) NOT NULL ENABLE,
"DEAL_ID" NUMBER(20,0) NOT NULL ENABLE,
"CURRENCY_ID" NUMBER(20,0) NOT NULL ENABLE,
"PAYMENT_TYPE_ID" NUMBER(20,0) NOT NULL ENABLE,
"CONTRACT_ID" NUMBER(20,0) NOT NULL ENABLE,
"SUBFILIAL_ID" NUMBER(20,0) NOT NULL ENABLE,
"EXPIRY_DATE_ID" NUMBER(20,0) NOT NULL ENABLE,
"AMOUNT" NUMBER(20,6) NOT NULL ENABLE,
"AMOUNT_BASE" NUMBER(20,6) NOT NULL ENABLE,
CONSTRAINT "MDEAL_DW_DEBTORS_PK" PRIMARY KEY ("COMPANY_ID", "FILIAL_ID", "PERSON_ID", "DEAL_ID", "CURRENCY_ID", "PAYMENT_TYPE_ID", "CONTRACT_ID", "SUBFILIAL_ID", "EXPIRY_DATE_ID")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_INDEX" LOCAL
(PARTITION "PART_HEAD" NOCOMPRESS
PCTFREE 10 INITRANS 2 MAXTRANS 255 LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_INDEX" ,
PARTITION "SYS_P33354" NOCOMPRESS
PCTFREE 10 INITRANS 2 MAXTRANS 255 LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_INDEX" ,
PARTITION "SYS_P33355" NOCOMPRESS
PCTFREE 10 INITRANS 2 MAXTRANS 255 LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_INDEX" ) ENABLE,
SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS,
SUPPLEMENTAL LOG DATA (UNIQUE INDEX) COLUMNS,
SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_DATA"
PARTITION BY LIST ("COMPANY_ID","FILIAL_ID") AUTOMATIC
(PARTITION "PART_HEAD" VALUES (( 0, 0 )) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_DATA" ,
PARTITION "SYS_P33354" VALUES (( 520, 124947 )) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_DATA" ,
PARTITION "SYS_P33355" VALUES (( 601, 145653 )) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "GWS_DATA" );
Loading