Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Besoin d'aide pour modélisation base de données.

4 réponses
Avatar
Guy
Bonjour ou Bonsoir,

J'ai à modifier une base de données qui permet de gérer des immeubles et je
n'arrive pas à faire une modélisation qui se tienne.

Dans la base actuelle, j'ai une table "Immeubles" qui permet de savoir
quelles sont les entreprises qui interviennent dans un immeuble par
"métier".

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires-Nom entreprise
- Sanitaires-Adresse entreprise
- Sanitaires-Tél entreprise
- Electricité-Nom entreprise
- Electricité-Adresse entreprise
- Electricité-Tél entreprise
et ainsi de suite.

J'ai 15 métiers différents (sanitaires, électricité, chauffage,...) qui
comprennent chacun les mêmes rubriques (nom, adresse, tél, fax,...).

Dans l'état actuel ça fonctionne malgré les redondances.

Le problème est que je dois ajouter 12 métiers supplémentaires avec pour
chacun plus d'une dizaine de rubriques. Les 255 champs d'une table n'y
suffiront pas et, d'autre part, il faut prévoir qu'un métier (sanitaires par
exemple) peut être géré par plus d'une entreprise.

Dans le cas d'une seule entreprise par métier le cas se résoud facilement
avec une table Entreprises dont la clé primaire pointe sur des nouveaux
champs Sanitaires, Electricité, etc. créés dans la table "Immeubles.

Mais pour une relation "plusieurs à plusieurs" je ne sais pas comment faire
pour avoir une clé primaire (ou une valeur unique créée automatiquement)
pour chaque champ métier dans la table "Immeubles".

J'envisageais les tables suivantes :

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires (clé unique pointant sur "Sanit-Ptr" de la table "Pivot
Sanitaires")
- Electricité (clé unique pointant sur "Elect-Ptr" de la table "Pivot
Electricité")
...

Table Pivot Sanitaires
- Sanit-Ptr
- Entr-Ptr

Table Pivot Electricité
- Elect-Ptr
- Entr-Ptr

Table Entreprises
- No (Clé primaire) pointant sur "Entr-Ptr" des différentes tables Pivot (27
soit une par métier).
- Nom
- Adresse
- Tél
...

Voilà, n'étant pas spécialiste en modélisation je sèche depuis 3 jours.

Merci par avance pour toute ébauche de solution.

Cordialement.

Guy

4 réponses

Avatar
Buddy
Salut
Faut raisonner globalement, tu ne peux pas créer autant de tables que de métiers. Sinon bonjour le
bordel.
Je procéderai comme suit :

tbl_Immeubles(#Id, Nom, Adresse, CP, Ville....)
tbl_Metiers(#Id, Metier)
tbl_Fournisseurs(#Id, Nom, Adresse, CP, Ville....)
tbl_Prestations(#Id, tbl_FournisseursId, tbl_MetiersId, Divers....)
tbl_Interventions(#Id, tbl_ImmeublesId, DateInt, Commentaires.....)
tbl_DetailsInterventions(#Id, tbl_InterventionsId, tbl_PrestationsId, Commentaires.....)

De cette manière, plus aucune redondance et plus aucune limite dans les métiers, fournisseurs ou
interventions.
Tiens moi au courant

Ouala
Bye
Buddy

"Guy" a écrit dans le message de news:
Bonjour ou Bonsoir,

J'ai à modifier une base de données qui permet de gérer des immeubles et je
n'arrive pas à faire une modélisation qui se tienne.

Dans la base actuelle, j'ai une table "Immeubles" qui permet de savoir
quelles sont les entreprises qui interviennent dans un immeuble par
"métier".

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires-Nom entreprise
- Sanitaires-Adresse entreprise
- Sanitaires-Tél entreprise
- Electricité-Nom entreprise
- Electricité-Adresse entreprise
- Electricité-Tél entreprise
et ainsi de suite.

J'ai 15 métiers différents (sanitaires, électricité, chauffage,...) qui
comprennent chacun les mêmes rubriques (nom, adresse, tél, fax,...).

Dans l'état actuel ça fonctionne malgré les redondances.

Le problème est que je dois ajouter 12 métiers supplémentaires avec pour
chacun plus d'une dizaine de rubriques. Les 255 champs d'une table n'y
suffiront pas et, d'autre part, il faut prévoir qu'un métier (sanitaires par
exemple) peut être géré par plus d'une entreprise.

Dans le cas d'une seule entreprise par métier le cas se résoud facilement
avec une table Entreprises dont la clé primaire pointe sur des nouveaux
champs Sanitaires, Electricité, etc. créés dans la table "Immeubles.

Mais pour une relation "plusieurs à plusieurs" je ne sais pas comment faire
pour avoir une clé primaire (ou une valeur unique créée automatiquement)
pour chaque champ métier dans la table "Immeubles".

J'envisageais les tables suivantes :

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires (clé unique pointant sur "Sanit-Ptr" de la table "Pivot
Sanitaires")
- Electricité (clé unique pointant sur "Elect-Ptr" de la table "Pivot
Electricité")
...

Table Pivot Sanitaires
- Sanit-Ptr
- Entr-Ptr

Table Pivot Electricité
- Elect-Ptr
- Entr-Ptr

Table Entreprises
- No (Clé primaire) pointant sur "Entr-Ptr" des différentes tables Pivot (27
soit une par métier).
- Nom
- Adresse
- Tél
...

Voilà, n'étant pas spécialiste en modélisation je sèche depuis 3 jours.

Merci par avance pour toute ébauche de solution.

Cordialement.

Guy








Avatar
Barabas
Bonsoir Guy,
il y a un utilitaire mis au point par Wooba, qui peut t'aider à construire
une base compete avec fonctions et code.
Mais Wooba est avare de l'aide fournie avec son utilitaire.
Si celà peut t'aider vas voir à www.nakedata.com
la même adresse est communiquée sur le site du facteur.
Bon code
Barabas
"Guy" a écrit dans le message de
news:
Bonjour ou Bonsoir,

J'ai à modifier une base de données qui permet de gérer des immeubles et
je

n'arrive pas à faire une modélisation qui se tienne.

Dans la base actuelle, j'ai une table "Immeubles" qui permet de savoir
quelles sont les entreprises qui interviennent dans un immeuble par
"métier".

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires-Nom entreprise
- Sanitaires-Adresse entreprise
- Sanitaires-Tél entreprise
- Electricité-Nom entreprise
- Electricité-Adresse entreprise
- Electricité-Tél entreprise
et ainsi de suite.

J'ai 15 métiers différents (sanitaires, électricité, chauffage,...) qui
comprennent chacun les mêmes rubriques (nom, adresse, tél, fax,...).

Dans l'état actuel ça fonctionne malgré les redondances.

Le problème est que je dois ajouter 12 métiers supplémentaires avec pour
chacun plus d'une dizaine de rubriques. Les 255 champs d'une table n'y
suffiront pas et, d'autre part, il faut prévoir qu'un métier (sanitaires
par

exemple) peut être géré par plus d'une entreprise.

Dans le cas d'une seule entreprise par métier le cas se résoud facilement
avec une table Entreprises dont la clé primaire pointe sur des nouveaux
champs Sanitaires, Electricité, etc. créés dans la table "Immeubles.

Mais pour une relation "plusieurs à plusieurs" je ne sais pas comment
faire

pour avoir une clé primaire (ou une valeur unique créée automatiquement)
pour chaque champ métier dans la table "Immeubles".

J'envisageais les tables suivantes :

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires (clé unique pointant sur "Sanit-Ptr" de la table "Pivot
Sanitaires")
- Electricité (clé unique pointant sur "Elect-Ptr" de la table "Pivot
Electricité")
...

Table Pivot Sanitaires
- Sanit-Ptr
- Entr-Ptr

Table Pivot Electricité
- Elect-Ptr
- Entr-Ptr

Table Entreprises
- No (Clé primaire) pointant sur "Entr-Ptr" des différentes tables Pivot
(27

soit une par métier).
- Nom
- Adresse
- Tél
...

Voilà, n'étant pas spécialiste en modélisation je sèche depuis 3 jours.

Merci par avance pour toute ébauche de solution.

Cordialement.

Guy








Avatar
Guy
Bonsoir ou Bonjour Buddy,

Super la solution ! Ca fonctionne à merveille.

Merci et bonne soirée ou bon dimanche.

Cordialement.

Guy

"Buddy" a écrit dans le message de
news:
Salut
Faut raisonner globalement, tu ne peux pas créer autant de tables que de
métiers. Sinon bonjour le

bordel.
Je procéderai comme suit :

tbl_Immeubles(#Id, Nom, Adresse, CP, Ville....)
tbl_Metiers(#Id, Metier)
tbl_Fournisseurs(#Id, Nom, Adresse, CP, Ville....)
tbl_Prestations(#Id, tbl_FournisseursId, tbl_MetiersId, Divers....)
tbl_Interventions(#Id, tbl_ImmeublesId, DateInt, Commentaires.....)
tbl_DetailsInterventions(#Id, tbl_InterventionsId, tbl_PrestationsId,
Commentaires.....)


De cette manière, plus aucune redondance et plus aucune limite dans les
métiers, fournisseurs ou

interventions.
Tiens moi au courant

Ouala
Bye
Buddy

"Guy" a écrit dans le message de
news:

Bonjour ou Bonsoir,

J'ai à modifier une base de données qui permet de gérer des immeubles et
je


n'arrive pas à faire une modélisation qui se tienne.

Dans la base actuelle, j'ai une table "Immeubles" qui permet de savoir
quelles sont les entreprises qui interviennent dans un immeuble par
"métier".

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires-Nom entreprise
- Sanitaires-Adresse entreprise
- Sanitaires-Tél entreprise
- Electricité-Nom entreprise
- Electricité-Adresse entreprise
- Electricité-Tél entreprise
et ainsi de suite.

J'ai 15 métiers différents (sanitaires, électricité, chauffage,...) qui
comprennent chacun les mêmes rubriques (nom, adresse, tél, fax,...).

Dans l'état actuel ça fonctionne malgré les redondances.

Le problème est que je dois ajouter 12 métiers supplémentaires avec pour

chacun plus d'une dizaine de rubriques. Les 255 champs d'une table n'y
suffiront pas et, d'autre part, il faut prévoir qu'un métier (sanitaires
par


exemple) peut être géré par plus d'une entreprise.

Dans le cas d'une seule entreprise par métier le cas se résoud
facilement


avec une table Entreprises dont la clé primaire pointe sur des nouveaux
champs Sanitaires, Electricité, etc. créés dans la table "Immeubles.

Mais pour une relation "plusieurs à plusieurs" je ne sais pas comment
faire


pour avoir une clé primaire (ou une valeur unique créée automatiquement)
pour chaque champ métier dans la table "Immeubles".

J'envisageais les tables suivantes :

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires (clé unique pointant sur "Sanit-Ptr" de la table "Pivot
Sanitaires")
- Electricité (clé unique pointant sur "Elect-Ptr" de la table "Pivot
Electricité")
...

Table Pivot Sanitaires
- Sanit-Ptr
- Entr-Ptr

Table Pivot Electricité
- Elect-Ptr
- Entr-Ptr

Table Entreprises
- No (Clé primaire) pointant sur "Entr-Ptr" des différentes tables Pivot
(27


soit une par métier).
- Nom
- Adresse
- Tél
...

Voilà, n'étant pas spécialiste en modélisation je sèche depuis 3 jours.

Merci par avance pour toute ébauche de solution.

Cordialement.

Guy












Avatar
Guy
Bonsoir ou bonjour Barabas,

Merci pour le lien. Buddy m'a fourni une solution mais j'ai téléchargé Wooba
et je m'y intéresse dès que j'ai le temps.

Cordialement.

Guy

"Barabas" a écrit dans le message de
news:40afb80f$0$257$
Bonsoir Guy,
il y a un utilitaire mis au point par Wooba, qui peut t'aider à construire
une base compete avec fonctions et code.
Mais Wooba est avare de l'aide fournie avec son utilitaire.
Si celà peut t'aider vas voir à www.nakedata.com
la même adresse est communiquée sur le site du facteur.
Bon code
Barabas
"Guy" a écrit dans le message de
news:
Bonjour ou Bonsoir,

J'ai à modifier une base de données qui permet de gérer des immeubles et
je

n'arrive pas à faire une modélisation qui se tienne.

Dans la base actuelle, j'ai une table "Immeubles" qui permet de savoir
quelles sont les entreprises qui interviennent dans un immeuble par
"métier".

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires-Nom entreprise
- Sanitaires-Adresse entreprise
- Sanitaires-Tél entreprise
- Electricité-Nom entreprise
- Electricité-Adresse entreprise
- Electricité-Tél entreprise
et ainsi de suite.

J'ai 15 métiers différents (sanitaires, électricité, chauffage,...) qui
comprennent chacun les mêmes rubriques (nom, adresse, tél, fax,...).

Dans l'état actuel ça fonctionne malgré les redondances.

Le problème est que je dois ajouter 12 métiers supplémentaires avec pour
chacun plus d'une dizaine de rubriques. Les 255 champs d'une table n'y
suffiront pas et, d'autre part, il faut prévoir qu'un métier (sanitaires
par

exemple) peut être géré par plus d'une entreprise.

Dans le cas d'une seule entreprise par métier le cas se résoud
facilement


avec une table Entreprises dont la clé primaire pointe sur des nouveaux
champs Sanitaires, Electricité, etc. créés dans la table "Immeubles.

Mais pour une relation "plusieurs à plusieurs" je ne sais pas comment
faire

pour avoir une clé primaire (ou une valeur unique créée automatiquement)
pour chaque champ métier dans la table "Immeubles".

J'envisageais les tables suivantes :

Table Immeubles
- No (numéro auto)
- No comptable
- Adresse immeuble
- Affectation immeuble
- Sanitaires (clé unique pointant sur "Sanit-Ptr" de la table "Pivot
Sanitaires")
- Electricité (clé unique pointant sur "Elect-Ptr" de la table "Pivot
Electricité")
...

Table Pivot Sanitaires
- Sanit-Ptr
- Entr-Ptr

Table Pivot Electricité
- Elect-Ptr
- Entr-Ptr

Table Entreprises
- No (Clé primaire) pointant sur "Entr-Ptr" des différentes tables Pivot
(27

soit une par métier).
- Nom
- Adresse
- Tél
...

Voilà, n'étant pas spécialiste en modélisation je sèche depuis 3 jours.

Merci par avance pour toute ébauche de solution.

Cordialement.

Guy