[b]ORA-02299 : duplicate keys found[/b]
419328Apr 16 2004 — edited Apr 19 2004When I create my first CUBE in ORACLE 9.2.0.5 on my windows 2000 server,the cube wizard wrote this error message :
ORA-02299:cannot validate(JANCO.UK_ON_0CASOVA_ID_DIMENZIA)-duplicate keys found
I dont know , why cube wizrad wrote "duplicate keys found",because my foreign key between dimension table and fact table was unique.
My SQL code generated by cube wizard :
begin cwm_utility.set_object_in_error(null, null, null, null);
end;
ALTER TABLE JANCO.DIMENZIA
ADD(CONSTRAINT UK_ON_0CASOVA_ID_DIMENZIA UNIQUE(ID))
ALTER TABLE JANCO.PREMENNA
ADD CONSTRAINT FK_ON_0CASOVA_ID_PREMENNA FOREIGN KEY(ID)
REFERENCES JANCO.DIMENZIA(ID) RELY DISABLE NOVALIDATE
declare CASOVA number;
tmp number;
begin
CWM_OLAP_CUBE.Create_Cube('JANCO', 'LANOVKA', 'LANOVKA', '');
CASOVA := CWM_OLAP_CUBE.Add_Dimension('JANCO', 'LANOVKA', 'JANCO', 'CASOVA', 'CASOVA');
CWM_OLAP_CUBE.Map_Cube('JANCO', 'LANOVKA', 'JANCO', 'PREMENNA', 'FK_ON_0CASOVA_ID_PREMENNA', 'ID', 'JANCO', 'CASOVA', 'CASOVA');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'DIFERENCIA_TENZOMETROV', 'DIFERENCIA TENZOMETROV', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'DIFERENCIA_TENZOMETROV', 'JANCO', 'PREMENNA', 'DIFERENCIA_TENZOMETROV');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'DOLNA_HRANICA_POLOHY', 'DOLNA HRANICA POLOHY', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'DOLNA_HRANICA_POLOHY', 'JANCO', 'PREMENNA', 'DOLNA_HRANICA_POLOHY');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'HORNA_HRANICA_POLOHY', 'HORNA HRANICA POLOHY', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'HORNA_HRANICA_POLOHY', 'JANCO', 'PREMENNA', 'HORNA_HRANICA_POLOHY');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'LAVY_TENZOMETER', 'LAVY TENZOMETER', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'LAVY_TENZOMETER', 'JANCO', 'PREMENNA', 'LAVY_TENZOMETER');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'PRAVY_TENZOMETER', 'PRAVY TENZOMETER', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'PRAVY_TENZOMETER', 'JANCO', 'PREMENNA', 'PRAVY_TENZOMETER');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'SKUTOCNA_POLOHA', 'SKUTOCNA POLOHA', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'SKUTOCNA_POLOHA', 'JANCO', 'PREMENNA', 'SKUTOCNA_POLOHA');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'TOLERANCIA_POLOHY', 'TOLERANCIA POLOHY', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'TOLERANCIA_POLOHY', 'JANCO', 'PREMENNA', 'TOLERANCIA_POLOHY');
CWM_OLAP_MEASURE.Create_Measure('JANCO', 'LANOVKA', 'ZIADANA_POLOHA', 'ZIADANA POLOHA', '');
CWM_OLAP_MEASURE.Set_Column_Map('JANCO', 'LANOVKA', 'ZIADANA_POLOHA', 'JANCO', 'PREMENNA', 'ZIADANA_POLOHA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'DIFERENCIA_TENZOMETROV', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'DOLNA_HRANICA_POLOHY', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'HORNA_HRANICA_POLOHY', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'LAVY_TENZOMETER', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'PRAVY_TENZOMETER', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'SKUTOCNA_POLOHA', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'TOLERANCIA_POLOHY', tmp, 'JANCO', 'CASOVA', 'CASOVA');
tmp:= cwm_utility.create_function_usage('SUM');
cwm_olap_measure.set_default_aggregation_method('JANCO', 'LANOVKA', 'ZIADANA_POLOHA', tmp, 'JANCO', 'CASOVA', 'CASOVA');
commit;
end;
Please help me :) Thanx very much
JOHN