Salut à tous,
Je poursuis mon entreprise de modélisation à postériori de la BDD de
dolibarr, mais je rencontre quelques obstacles.
Notament :
1. Clés étrangères
Selon ce que je devine, les clés étrangères sont en général dans
dolibarr identifiées par fk_xxxx ou xxx correspond en général
(encore :-) ) au nom de la table destination, parfois abrégé (fk_soc).
Cependant, dans certains cas, des fk_xxx existent sans que la table
cible ne contienne de clé primaire (ex: llx_expedition /
llx_expedition_det)
2. Clés primaires
Y a-t-il une règle qui préside au nommage des clés primaires ?
on trouve souvent des rowid, parfois des idp, parfois d'autres choses...
Tout ceci m'amène en toute humilité à vous proposer d'adopter (si ce
n'est déjà fait) une charte de nommage de base pour les tables qui a
déjà fait ses preuves :
suffixer le nom de la table de _id (pour la clé primaire), _cod (pour le
code "rapide" dans une table de référence ), _lib (pour le libellé
toujours dans une table de référence)
Dans cette optique, les clés étrangères deviennent 'tablecible_id' tout
simplement, ce qui les rend facile à identifier, et qui permet par la
même occasion un reverse engineering automatisé par les softs de
modélisation.
exemple :
create table country ( country_id integer unsigned not null, country_cod
varchar(2), country_lib varchar(50), primary key (country_id));
create table ville ( ville_id integer unsigned not null, ville_cod
varchar(5), ville_lib varchar(80), country_id integer unsigned not null,
primary key (ville_id), foreign key (country_id) references country
(country_id));
++
Gael
_______________________________________________
Dolibarr-dev mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/dolibarr-dev