La colonna della tabella deve essere dello stesso tipo di dati della colonna del cluster. Nel tuo esempio, funziona bene:
create table test1 (
id int
) cluster abc_clus(id);
Table TEST1 created.
Anche una chiave composta funziona, se il tipo di dati corrisponde a:
create table test2 (
a int,
b int,
primary key(a, b)
) cluster abc_clus(a);
Table TEST2 created.
Tuttavia, se il tipo di dati è diverso, viene visualizzato il messaggio di errore:
create table test3 (
vc varchar2(7)
) cluster abc_clus(vc);
ORA-01753: column definition incompatible with clustered column definition
E il tipo di dati deve essere esattamente lo stesso, anche int
e number
non sono compatibili:
create table test4 (
n NUMBER
) cluster abc_clus(n);
ORA-01753: column definition incompatible with clustered column definition
MODIFICA:
Puoi anche avere cluster compositi:
crea il cluster idc_clus (i int,d date);
crea l'indice idc_clus_idx sul cluster idc_clus;
create table test5 (i int,d date, primary key (i,d)) cluster idc_clus(i, d);