Tabelkolonnen skal være den samme datatype som klyngekolonnen. I dit eksempel fungerer dette fint:
create table test1 (
id int
) cluster abc_clus(id);
Table TEST1 created.
Selv en sammensat nøgle virker, hvis datatypen matcher:
create table test2 (
a int,
b int,
primary key(a, b)
) cluster abc_clus(a);
Table TEST2 created.
Men hvis datatypen er anderledes, får du din fejlmeddelelse:
create table test3 (
vc varchar2(7)
) cluster abc_clus(vc);
ORA-01753: column definition incompatible with clustered column definition
Og datatypen skal være nøjagtig den samme, endda int
og number
er ikke kompatible:
create table test4 (
n NUMBER
) cluster abc_clus(n);
ORA-01753: column definition incompatible with clustered column definition
EDIT:
Du kan endda have sammensatte klynger:
opret klynge idc_clus (i int,d dato);
opret indeks idc_clus_idx på cluster idc_clus;
opret tabel test5 (i int,d dato,primær nøgle (i,d)) cluster idc_clus(i,d);