I have exported a schema from one Oracle database using SQL Developer (tools -> unload database). It has created "create table" statements similar to this one :
CREATE TABLE "APP_USER"
( "ID" NUMBER(*,0),
"USERNAME" VARCHAR2(200),
"PASSWORD" NVARCHAR2(200),
"TYPE" VARCHAR2(20),
"FIRST_NAME" VARCHAR2(100),
"LAST_NAME" VARCHAR2(100)
) 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 "LIS_DATA" ;
But when I try to execute the code on another database, also from SQL Developer, it fires an "ORA-00922 missing or invalid option".
Apparently there is something wrong with the storage section of the query (starting with "SEGMENT" and ending with "DEFAULT)" because if I remove it it works. But what is it exactly ?
I am just an application developer who happens to have to work with Oracle. I'm ok with SQL but this Oracle storage parameters stuff is Chinese to me. Plus I am puzzled that SQL Developer generates invalid code...
I'm not familiar with "segment creation immediate". It seems to be a 11G feature. Maybe you are trying to create a table using 11G features on an older version database.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With