Bonjour,

Je me permets de relancer le fil suivant Maxextents

car j'ai le même problème que Ziranium : Comment faire prendre en compte le MAX_EXTENT ?
J'ai besoin de créer une table avec ce maxextent fixe pour reproduire une erreur de ma production.

La dernière réponse de Pifor donne une solution qui ne semble pas fonctionner chez moi et je ne comprends pas pourquoi. J'aurais besoin d'un coup de main, voire d'un coup de pied pour me remettre dans le bon chemin , svp.

Voila ce que j'ai lancé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
--Creation tablespace bidon maxé
CREATE TABLESPACE TEST_TBS
DATAFILE 'D:\ptc\ocu_8.0\oradata\WIND\TEST_TBS.DBF' SIZE 7168K
DEFAULT STORAGE (initial 80K next 80K MAXEXTENTS 50 PCTINCREASE 0);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
--Creation table bidon
CREATE TABLE wtadmin.test_tbl (c1 char(2000))
 TABLESPACE	TEST_TBS
 STORAGE
 (
	INITIAL		80K
	NEXT		80K
	MAXEXTENTS	10
	PCTINCREASE	25
 ) ;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME, EXTENTS, MAX_EXTENTS 
from DBA_SEGMENTS WHERE SEGMENT_NAME='TEST_TBL'
 
SEGMENT_NAME    SEGMENT_TYPE       TABLESPACE_NAME    EXTENTS MAX_EXTENTS
--------------- ------------------ --------------- ---------- -----------
TEST_TBL        TABLE              TEST_TBS                 1  2147483645
Pourquoi le Max_Extents est égal à unlimited ?


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 --Remplissage de la table pour tester comportement
 Begin
 	for i in 1..3000 loop
 		insert into test_tbl values ('a');
 	end loop;
 end;
ERREUR à la ligne 1 :
ORA-01653: impossible d'étendre la table WTADMIN.TEST_TBL de 5 
dans le tablespace TEST_TBS
ORA-06512: à ligne 3
Il y a une erreur mais pas celle que j'espérais (ORA-01631)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME, EXTENTS, MAX_EXTENTS 
from DBA_SEGMENTS WHERE SEGMENT_NAME='TEST_TBL'
 
SEGMENT_NAME    SEGMENT_TYPE       TABLESPACE_NAME    EXTENTS MAX_EXTENTS
--------------- ------------------ --------------- ---------- -----------
TEST_TBL        TABLE              TEST_TBS                87  2147483645
Voila ce que donne cette commande sur un segment maxé chez moi et que je souhaite reproduire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SEGMENT_NAME        SEGMENT_TYPE  TABLESPACE_NAME      EXTENTS MAX_EXTENTS
------------------- ------------- ----------------- ---------- -----------
WFVOTINGEVENTAUDIT  TABLE         USERS                   1017        1017
Merci d'avance pour votre aide.