Aide pour création Bdd client sous Acces
batteurkev
-
phil_232 Messages postés 286 Statut Membre -
phil_232 Messages postés 286 Statut Membre -
Bonjour,
Je viens ici car apparement l'aide est souvent pertinente au dire.
J'ai actuellement un problème avec le logiciel Access de Microsoft.
Lorsque je veux creer une requête il me signale "Incoherence de type dans une expression".
Alors pour rentrer dans le contexte, je suis en cours de création d'une base de données client pour une entreprise de distribution d'équipement sportif.
Ce que j'aimerais faire est de voir les clients qui achetent dans un rayon particulié du magasin à partir des produits qu'ils ont achetés sachant que chaque produit
est référencé dans le rayon.
Exemple: Rayon qui a pour critère Montagne, j'aimerais voir les clients qui ont acheté des produits de ce rayon
Pour celà j'ai crée 3 tables qui sont les suivantes :
CLIENT
[Clé Primaire] N°client (NuméroAuto) ex : 1
Nom client (Texte) ex : Dubois
Prénom client (Texte) ex : Pierre
Sexe (Texte) ex : H
Adresse client (Texte) ex : 7 rue de l'élysée
Code postal client (Texte) ex : 99000
Ville client (Texte) ex : Ailleurs
Telfixe client (Texte) ex : 03.....
Telport client (Texte) ex : 06..........
Achat produit (Texte) ex : 1,3,4,31,52 (ceux sont les références des produits qu'a acheté le client
faites par liste déroulantes à choix multiples depuis N°produit)
PRODUIT
[Clé primaire] N°produit (Numérique) ex : 31
Description produit (Texte) ex : Nike Air blanche
Prix TTC produit (Monétaire) ex : 110 €
RAYON
[Clé primaire] N°Rayon (Numérique) ex : 1
Secteur rayon (texte) ex : Montagne
Description rayon (texte) ex : Randonnée, Escalade, Alpinisme ....
Produits (texte) ex : 12,34,5,7,2 ... (ceux sont les références produits dans le rayon faites par
liste déroulantes à choix multiples depuis N°produit)
Voici ma relation : http://img378.imageshack.us/img378/8219/relationja8.jpg
Ma requète est http://img386.imageshack.us/img386/9376/requeteme6.jpg
et voilà ce qui m'est présenté http://img386.imageshack.us/img386/9376/requeteme6.jpg
J'espere avoir été assez clair.
J'attend vos réponses avec impatience merci . ^^
Bye
Je viens ici car apparement l'aide est souvent pertinente au dire.
J'ai actuellement un problème avec le logiciel Access de Microsoft.
Lorsque je veux creer une requête il me signale "Incoherence de type dans une expression".
Alors pour rentrer dans le contexte, je suis en cours de création d'une base de données client pour une entreprise de distribution d'équipement sportif.
Ce que j'aimerais faire est de voir les clients qui achetent dans un rayon particulié du magasin à partir des produits qu'ils ont achetés sachant que chaque produit
est référencé dans le rayon.
Exemple: Rayon qui a pour critère Montagne, j'aimerais voir les clients qui ont acheté des produits de ce rayon
Pour celà j'ai crée 3 tables qui sont les suivantes :
CLIENT
[Clé Primaire] N°client (NuméroAuto) ex : 1
Nom client (Texte) ex : Dubois
Prénom client (Texte) ex : Pierre
Sexe (Texte) ex : H
Adresse client (Texte) ex : 7 rue de l'élysée
Code postal client (Texte) ex : 99000
Ville client (Texte) ex : Ailleurs
Telfixe client (Texte) ex : 03.....
Telport client (Texte) ex : 06..........
Achat produit (Texte) ex : 1,3,4,31,52 (ceux sont les références des produits qu'a acheté le client
faites par liste déroulantes à choix multiples depuis N°produit)
PRODUIT
[Clé primaire] N°produit (Numérique) ex : 31
Description produit (Texte) ex : Nike Air blanche
Prix TTC produit (Monétaire) ex : 110 €
RAYON
[Clé primaire] N°Rayon (Numérique) ex : 1
Secteur rayon (texte) ex : Montagne
Description rayon (texte) ex : Randonnée, Escalade, Alpinisme ....
Produits (texte) ex : 12,34,5,7,2 ... (ceux sont les références produits dans le rayon faites par
liste déroulantes à choix multiples depuis N°produit)
Voici ma relation : http://img378.imageshack.us/img378/8219/relationja8.jpg
Ma requète est http://img386.imageshack.us/img386/9376/requeteme6.jpg
et voilà ce qui m'est présenté http://img386.imageshack.us/img386/9376/requeteme6.jpg
J'espere avoir été assez clair.
J'attend vos réponses avec impatience merci . ^^
Bye
A voir également:
- Aide pour création Bdd client sous Acces
- Cybera client - Télécharger - Divers Réseau & Wi-Fi
- Acces rapide - Guide
- Creation compte gmail - Guide
- Création site web - Guide
- Filezilla client - Télécharger - Téléchargement & Transfert
2 réponses
la relation est fait dans le mauvais sens. CLIENT ne DOIT PAS contenir une réf vers le produit mais PRODUIT doit contenir une vers le client. comme ça chaque achat est lié à un client. puis PRODUIT contient aussi une réf vers le rayon. Donc
CREATE TABLE PRODUIT
[Clé primaire] N°produit (Numérique) ex : 31
ClientID (Numérique),
RayonID (Numérique),
Description produit (Texte) ex : Nike Air blanche
Mettre le prix dans PRODUIT est dangereux ! Souvent on veut un rapport p.ex. à la fin de l'année. Si ton prix à changé dans l'année le chiffre d'affaire ne sera pas correcte. Mieux vaut une table avec les prix avec deux date qui indique leur validité
CREATE TABLE ProductPrice
[Clé primaire] ID (Numérique),
ProductID (Numérique),
Price (Numérique),
ValidFrom DateTime,
ValidTo DateTime
CREATE TABLE PRODUIT
[Clé primaire] N°produit (Numérique) ex : 31
ClientID (Numérique),
RayonID (Numérique),
Description produit (Texte) ex : Nike Air blanche
Mettre le prix dans PRODUIT est dangereux ! Souvent on veut un rapport p.ex. à la fin de l'année. Si ton prix à changé dans l'année le chiffre d'affaire ne sera pas correcte. Mieux vaut une table avec les prix avec deux date qui indique leur validité
CREATE TABLE ProductPrice
[Clé primaire] ID (Numérique),
ProductID (Numérique),
Price (Numérique),
ValidFrom DateTime,
ValidTo DateTime
aaaah, en fait j'aurai du y penser. D'abord, non! Ton approche est beaucuop trop lourd pour etre utilisable. Ce qu'on fait c'est un si-dite many-to many. Tu auras trois tables : une pour les clients, une pour les produits, une qui met en relation client et produit. Donc pour CLIENT rien ne change, dans PRODUIT on en ne met PAS la réf vers le client. La 3ième est bêtement
CRATE TABLE ProductsClient
ClientID numérique
ProductID numérique
clé primaire composée de ClientID, ProductID
----------- ------------------- -------------
-Clients- ProductClient Products -
---------- ------------------- -------------
ClientID--ClientID
^^^^^^ProductID -- ProductID
(je voulais faire un ASCII art mais ca marche pas trop bien ici)
en langage humain :
un client peut avoir (acheter) plusieurs produits, et un produit peut etre acheter par plusieurs client, d'où la table qui fait le lein entre les deux
ceci s'appelle Normalisation.
CRATE TABLE ProductsClient
ClientID numérique
ProductID numérique
clé primaire composée de ClientID, ProductID
----------- ------------------- -------------
-Clients- ProductClient Products -
---------- ------------------- -------------
ClientID--ClientID
^^^^^^ProductID -- ProductID
(je voulais faire un ASCII art mais ca marche pas trop bien ici)
en langage humain :
un client peut avoir (acheter) plusieurs produits, et un produit peut etre acheter par plusieurs client, d'où la table qui fait le lein entre les deux
ceci s'appelle Normalisation.
Je sais qu'il y a se systeme de liste déroulante avec choix multiples, puis je l'utiliser pour celà ?
bref : mauvais design