Hello Pascal,
I have two questions about some fonctionnalities in Hackolade.
Q1: I tried to import a file DDL of Oracle to have my data model. But for the tables which have the composite keys as PK, I can't get the primary key automatically.
The DDL I used as below:
CREATE TABLE "CONTRAT"
( "ID_CONTRAT" VARCHAR2(30 BYTE),
"DT_DEBUT" DATE,
"DT_FIN" DATE,
"LB_TYPE" VARCHAR2(30 BYTE),
"LB_DESCRIPTION" VARCHAR2(500 BYTE),
"FL_ACTIF" NUMBER(1,0)
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 81920 NEXT 8388608 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TBS_DWH" ;
ALTER TABLE "DWH"."D_DETAIL_INSTALLATION" MODIFY ("ID_CONTRAT" NOT NULL ENABLE);
ALTER TABLE "DWH"."D_DETAIL_INSTALLATION" MODIFY ("DT_DEBUT" NOT NULL ENABLE);
ALTER TABLE "DWH"."D_DETAIL_INSTALLATION" ADD PRIMARY KEY ("ID_CONTRAT", "DT_DEBUT", "LB_TYPE")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 81920 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TBS_DWH_I" ENABLE;

In addition, for the column with type "Date" in Oracle target, even I do not have the possibility to choose it as primary key by hand. But the choice exists for other types.
Q2 : I wonder if we can create a relation between two tables by "homonymie".
Can I create a relation when a primary key of one table is detected that it exists as a field in another table? The detection is made by the same fields which have the same name, the same type and the same size.
For example,

I have two tables. Each has their primary key. The field "code_pays" is the primary key in table "pays". In table "film", there is also a field "code_pays" with the same name, type and size. So can I create a relation between "pays" and "film" directly by clicking a button or right click ?
Because I have lots of tables in my data model, it will take a lot of time to do this if by hand. I am looking forward to this fonctionnality.
Thank you very much in advance if you can give some ideas about these questions. Thanks :)