Home » SQL & PL/SQL » SQL & PL/SQL » cannot use pctincrease in create table statement
cannot use pctincrease in create table statement [message #9244] Tue, 28 October 2003 21:10 Go to next message
Derren Seah
Messages: 6
Registered: September 2003
Junior Member
I am trying to create a table in Oracle9i Enterprise Edition Release 9.2.0.1.0.

The table is created properly, but there is no value for pctincrease. I specify it in the create statement, but Oracle seems to ignore it. Even this example from the doco, it does not create pctincrease.

CREATE TABLE countries
( country_id CHAR(2)
CONSTRAINT country_id_nn NOT NULL
, country_name VARCHAR2(40)
, currency_name VARCHAR2(25)
, currency_symbol VARCHAR2(3)
, region VARCHAR2(15)
, CONSTRAINT country_c_id_pk
PRIMARY KEY (country_id )
ORGANIZATION INDEX
INCLUDING country_name
PCTTHRESHOLD 2
STORAGE
( INITIAL 4K
NEXT 2K
PCTINCREASE 20
MINEXTENTS 1
MAXEXTENTS 1 )

I have specified a value of 20, but when I look in dba_tables, the pct_increase value is null. Any idea why this would be happening?
Re: cannot use pctincrease in create table statement [message #9247 is a reply to message #9244] Wed, 29 October 2003 00:18 Go to previous messageGo to next message
Maaher
Messages: 7065
Registered: December 2001
Senior Member
First remark: why use a storage clause at all? You're on 9i, let Oracle take care of it by means of a locally managed tablespace.

Look for PCTINCREASE in DBA_SEGMENTS instead of DBA_TABLES. You are using an INDEX ORGANIZED TABLE (IOT). The data is stored within the index, if I'm not mistaken. Look for a segment name that corresponds with your primary key name. There you should find the info.

MHE
Re: cannot use pctincrease in create table statement [message #9254 is a reply to message #9244] Wed, 29 October 2003 08:23 Go to previous message
Mike
Messages: 417
Registered: September 1998
Senior Member
I guess you are using a localy managed tablespace (LMT), and if so you cannot use pctincrease.

Initial values like 2 or 4 k are also not any more a realy good exeample because most Oracle DBs are using now Block sizes of 8k.

From my point of view you could remove the entire STOTAGE clause if you are using LMT
Previous Topic: eplainplan
Next Topic: Concatenate large strings
Goto Forum:
  


Current Time: Thu Apr 25 10:19:22 CDT 2024