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 [email protected] http://lists.nongnu.org/mailman/listinfo/dolibarr-dev
