Toad World Blog

Oracle CREATE TABLE Syntax

Aug 14, 2015 7:58:00 AM by Quest Software

Oracle V11.1

Description    Example

>>──CREATE─┬──────────────────┬─TABLE──schema.──table──┬─relational_table─┬─>
           └─GLOBAL TEMPORARY─┘                        ├─object_table─────┤
                                                       └─XMLtype_table────┘

Oracle V9.0-10.2

Description    Example

>>─┬─relational_table─┬───><
   ├─object_table─────┤
   └─XMLtype_table────┘

Note: The XMLtype_table clause was added with Oracle 9.2.


Oracle V8.1

Description    Examples

relational_table

>>─CREATE─┬──────────────────┬─TABLE─┬─────────┬─table─────────>
          └─GLOBAL TEMPORARY─┘       └─schema.─┘

>─(relational_properties)─┬─────────────────────────────┬──────>
                          └─ON COMMIT─┬─DELETE───┬─ROWS─┘
                                      └─PRESERVE─┘

>─┬─────────────────────┬─┬──────────────────┬────────────────><
  └─physical_properties─┘ └─table_properties─┘

object_table

>>─CREATE─┬──────────────────┬─TABLE─┬─────────┬─table─────────>
          └─GLOBAL TEMPORARY─┘       └─schema.─┘

>─OF─┬─────────┬─object_type─┬─────────────────────┬───────────>
     └─schema.─┘             └─(object_properties)─┘

>─────┬─────────────────────────────┬─┬──────────────────┬─────>
      └─ON COMMIT─┬─DELETE───┬─ROWS─┘ └─table_properties─┘
                  └─PRESERVE─┘

>─┬────────────┬┬──────────────────┬┬─────────────────────┬───><
  └─OID_clause─┘└─OID_index_clause─┘└─physical_properties─┘

Oracle V8.0

Description

Relational Table

>>──CREATE TABLE──┬───────────┬──table_name─────────────────────────────────────>
                  └──schema.──┘
>─┬───────────────────────────────────────────────────────────────────────────┬─>
  │   v───────────────────────────────── , ─────────────────────────────────┐ │
  └(─┬─columndatatype─┬────────────┬┬─────────────────┬┬─────────────────┬┬┴)┘
     │                 └DEFAULT expr┘└column_constraint┘└column_ref_clause┘│
     └┬─table_constraint─┬─────────────────────────────────────────────────┘
      └─table_ref_clause─┘

>──┬───────────────────────────────────────────────────────┬────────────────────>
   ├──segment_attributes_clause────────────────────────────┤
   ├──ORGANIZATION─┬─INDEX──index_organized_table_clause─┬─┤
   │               └─HEAP─┬───────────────────────────┬──┘ │
   │                      └─segment_attributes_clause─┘    │
   │                           v──── , ────┐               │
   └───CLUSTER cluster_name ( ─── column ──┴─ ) ───────────┘

>──┬─────────────────────────────────────────────────┬──────────────────────────>
   ├─LOB_storage_clause──────────────────────────────┤
   └─NESTED TABLE nested_item STORE AS storage_table─┘

>──┬────────────────────────┬───────────────────────────────────────────────────>
   └─table_partition_clause─┘

                      v──────────── , ──────────┐
>──┬─────────────────┬┬────────────────────────┬┴─┬─────────────┬┬─────────┬───><
   └─parallel_clause─┘├─ENABLE enable_clause───┤  └─AS subquery─┘├─CACHE───┤
                      └─DISABLE disable_clause─┘                 └─NOCACHE─┘

Object Table

>>──CREATE TABLE──┬─────────┬──table_name──OF──┬─────────┬──object_type─────────>
                  └─schema.─┘                  └─schema.─┘
>──┬─────────────────────────────────────────────────────────────────────────┬──>
   │  v────────────────────────────────── , ──────────────────────────────┐  │
   └(─┬┬─column────┬┬────────────┬┬─────────────────┬┬─────────────────┬─┬┴)─┘
      │└─attribute─┘└DEFAULT expr┘└column_constraint┘└column_ref_clause┘ │
      └┬─table_constraint─┬──────────────────────────────────────────────┘
       └─table_ref_clause─┘

>──┬─────────────────────────────────────────────────┬┬──────────────────────┬──>
   ├─segment_attributes_clause───────────────────────┤└table_partition_clause┘
   ├─LOB_storage_clause──────────────────────────────┤
   └─NESTED TABLE nested_item STORE AS storage_table─┘

>──┬────────────────────────────────────────────────────────┬───────────────────>
   └─OIDINDEX──┬───────┬─(─┬─physical_attributes_clause─┬─)─┘
               └─index─┘   └─TABLESPACE tablespace──────┘

   v──────────── , ──────────┐
>──┬────────────────────────┬┴─┬─────────────┬┬─────────┬──────────────────────><
   ├─ENABLE enable_clause───┤  └─AS subquery─┘├─CACHE───┤
   └─DISABLE disable_clause─┘                 └─NOCACHE─┘

Oracle V7.3

>>──CREATE TABLE──┬───────────┬──table_name────────────────────────────>
                  └──schema.──┘
      v─────────────────────── , ───────────────────────────────┐
>───(──┬──columndatatype─┬──────────────┬┬───────────────────┬┬┴──)───>
       │                  └─DEFAULT expr─┘└─column_constraint─┘│
       └──table_constraint─────────────────────────────────────┘

>───┬──┬────────────────────┬────────────────────────┬─────────────────>
    │  ├───PCTFREE x────────┤                        │
    │  ├───PCTUSED x────────┤                        │
    │  ├───INITRANS x───────┤                        │
    │  ├───MAXTRANS x───────┤                        │
    │  ├───TABLESPACE name──┤                        │
    │  ├───STORAGE clause───┤                        │
    │  └─┬─RECOVERABLE───┬──┘                        │
    │    └─UNRECOVERABLE─┘                           │
    │                           v──── , ────┐        │
    └───CLUSTER cluster_name ( ─── column ──┴─ ) ────┘
   v──────────── , ──────────────┐
>───┬──────────────────────────┬─┴──┬───────────────┬──────────────────>
    ├──ENABLE enable_clause────┤    └──AS subquery──┘
    └──DISABLE disable_clause──┘

>──┬────────────────────────────────────────────┬─┬─NOCACHE─┬─────────><
   │               v──────────────────────┐     │ └─CACHE───┘
   ├───PARALLEL─(───┬─DEGREE───┬─integer─┬┴─┬─)─┤
   │                │          └─DEFAULT─┘  │   │
   │                └─INSTANCE─┬─integer─┬──┘   │
   │                           └─DEFAULT─┘      │
   └───NOPARALLEL───────────────────────────────┘

Tags: Oracle Spotlight on Oracle Wiki

Quest Software

Written by Quest Software