IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

conseils conception d'une base de donnees


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut conseils conception d'une base de donnees
    Bonjour tout le monde,

    je suis confronte a un petit probleme, j'ai une solution, mais je ne sais pas si c'est la bonne!!

    actuellement, pour chaque membre/client, je lui attribue individuellement des services (newsletter, bulletin, service1, service2, ...):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    table clients (id_client, nom, prenom, email, mot de passe, type_membre, newsletter, bulletin, service1, service2)
    je compte desormais mettre en place un systeme de groupe, c'est a dire:
    type membre1 a droit a: newsletter, service1, service2
    type membre2 a droit a : bulletin, service2

    ceci me donne la structure suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    table clients (id_client, nom, prenom, email, mot de passe, id_membre)
    table type_membres (id_membre, libelle)
    table services (id_service, libelle)
    table services_membres (id_membre, id_service)
    du coup, le fait de dire qu'une personne X est 'type_membre1', elle herite automatiquement les services attribues a 'type_membre1'

    j'espere que jusque la je suis clair.

    le probleme est que je souhaite donner la possibilite de supprimer des services. c'est a dire que si une personne X est 'type_membre1' mais elle ne souhaite pas recevoir un des services, comment devrais je faire?
    creer une table special pour les services non souhaites??? (id_client, id_service_non_souhaite)

    Merci de votre aide

  2. #2
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Bonjour redah75,

    Si j'ai bien compris ton besoin, tu souhaites construire des "packs" de services et attribuer un pack à des utilisateurs. Mais ce pack reste un ensemble de services par défaut que chaque utilisateur peut modifier à volonté.

    Si c'est tout bien compris, voilà comment je ferai.
    Je garderai les tables que tu as définis qui permettraient d'initialiser les services par défaut de chaque nouvel utilisateur.
    Je créerais alors une table clients_services (id_client, id_service) qui serait initialisée avec les valeurs de services_membres mais qui pourrait être modifiée, par la suite, par l'utilisateur lui-même.

    J'espère avoir pu t'aider.

    Ta solution me paraît compliqué car elle impliquerait de prévoir tous les cas possibles ce qui me semble fastidieux et non obligatoire.

    Cordialement.

  3. #3
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Une variante serait de prévoir une colonne booléenne dans la table clients_services (id_client, id_service) qui sera à TRUE par défaut et que le client pourra positionner à FALSE.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    Merci pour vos reponses.

    Oui Zgema, c'est bien ce que je veux faire, mais je voyais les choses autrement:
    disons j'ai 2 types de membres: Membre prive & Membre collectif.

    - les membres prives ont droit a : service1, service2
    - les membres collectifs ont droit a : service1, service3, service4

    ma table client ressemblera a ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    id, nom, email, type
    -------------------------------------------
    101,  Martin, martin@hotmail.com, Membre prive
    biensur je n'aurai pas 'Membre prive' dans ma table mais plutot un identifiant

    cette personne alors aura automatiquement droit a service1 et service2

    ce que vous me demandez est de dupliquer en quelque sorte les services, est ce une bonne solution? on ne perd pas du coup l'interet de mettre en place un systeme de groupe/profil ???

    si par exemple un jour on decide de rajouter 'service5' aux membres prives, qua faut il faire??

    Maljuna Kris, tu as bien lu dans mes pensees, ce que tu as dit est la question que j'allais poser en lisant la reponse de Zgema )
    quel est le meilleur type de colonne boolenne? enum (o, n)??

  5. #5
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    A partir du moment où la notion de "membre" peut être modifiée par chaque utilisateur, tu es obligé de stocker cette information quelque part.

    A propos du cas de l'ajout d'un service, il faudra effectivement ajouter ce service à chaque utilisateur concerné.

    Pour ma part, je ne vois pas d'autre solution.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    OK merci les gars.

    je pense que oui, du moment que les infos concernent chaque utilisateur, je suis oblige de le faire comme tu as dit.

    une derniere question, la meilleure maniere de stocker les mots de passe est bien un champ en md5 ??

  7. #7
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Citation Envoyé par redah75 Voir le message
    une derniere question, la meilleure maniere de stocker les mots de passe est bien un champ en md5 ??
    Il faut vraiment éviter de les conserver en clair.

    Idéalement, on prend le mot de passe, on ajoute un sel (une chaine aléatoire mais fixe), et on passe le tout dans une fonction de hachage. Il me semble que md5 commence à être un peut faible. Un SHA-1 serait peut-être préférable (mais plus gros), voir SHA-512 pour être un peu parano.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    pour l'instant je les enregistres en md5 mais je me suis dit justement que c'est peut etre un peu demodé
    j'ai remarque que phpmyadmin propose le type SHA-1 mais pas le 500!
    sinon, comment utiliser le type SHA-1?
    j'ai aussi remarque qu'il existe le type "PASSWORD & OLD_PASSWORD" qu'est ce que c'est?

  9. #9
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Citation Envoyé par redah75 Voir le message
    pour l'instant je les enregistres en md5 mais je me suis dit justement que c'est peut etre un peu demodé
    j'ai remarque que phpmyadmin propose le type SHA-1 mais pas le 500!
    sinon, comment utiliser le type SHA-1?
    Ce n'est pas ce que phpmyadmin propose qui devrait faire fois. Les mots de passes d'une application ne devrait pas atteindre la BDD. Hash le mot de passe devrait être ce que l'application fait en premier avec le mot de passe. Ca devrait ressemble à quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    hashedmdp = SHA1("mot de passe" + "ve54jh#dDH5")
    Du point de vue de MySQL, ce sera juste un CHAR(32) pour un md5, CHAR(40) pour un sha1, etc. Idéalement, il serait même conservé en binaire, c'est deux fois plus petit mais peut-être un peu se compliquer la vie. La question va plutôt être de savoir ce qui est disponible dans le langage de l'application.


    Citation Envoyé par redah75 Voir le message
    j'ai aussi remarque qu'il existe le type "PASSWORD & OLD_PASSWORD" qu'est ce que c'est?
    Probablement les fonctions utilisées par MySQL pour hasher ses mots de passe. Il y a eu un changement en cours de route et l'ancienne fonction a du rester sous la forme de OLD_PASSWORD à des fin de compatibilité.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    OK, merci pour ces infos
    mais etant donne que j'ai plus de 4000 mots de passes enregistres en md5, comment est il possible de les passer en SHA-1 ??

    et enfin une derniere question stp
    dans ma base membres/clients, j'ai diffents types de membres: membre collectif (au nom d'une entreprise), membre privé (a titre perso ou entreprise), ...
    pour les membres prives y a pas de problemes : il y a 1 seul compte par personne.
    Par contre pour les membres collectifs, il y a un compte principal et n autres comptes reliés au compte principal.
    quelle est la meilleure conception de la base pour palier a ce probleme?

    j'ai pense a ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    clients(id_client, prenom, nom, societe, email, mot de passe, ...)
    clients_attaches(id_client_attache, id_client, nom, prenom, email, mot de passe)
    clients_adresses(id_client, type, adresse, ville, pays)
    où type indique s'il s'agit d'une adresse de facturation ou livraison

    mais je sens pas trop cette solution...!!

    Merci encore une fois de ton aide

  11. #11
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par redah75 Voir le message
    dans ma base membres/clients, j'ai diffents types de membres: membre collectif (au nom d'une entreprise), membre privé (a titre perso ou entreprise), ...
    pour les membres prives y a pas de problemes : il y a 1 seul compte par personne.
    Par contre pour les membres collectifs, il y a un compte principal et n autres comptes reliés au compte principal.
    quelle est la meilleure conception de la base pour pallier ce probleme?

    j'ai pense a ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    clients(id_client, prenom, nom, societe, email, mot de passe, ...)
    clients_attaches(id_client_attache, id_client, nom, prenom, email, mot de passe)
    clients_adresses(id_client, type, adresse, ville, pays)
    où type indique s'il s'agit d'une adresse de facturation ou livraison
    Saluton,
    Un client peut-il appartenir à plusieurs sociétés ? Si ce n'est pas le cas tu peux regarder l'article d'SQLPRO sur la gestion des arborescences qui t'éviterait la création de la table clients_attaches.
    http://sqlpro.developpez.com/cours/arborescence/
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    wow, reveillé et actif a 7h07???

    merci pour le lien, je prendrai le temps de le lire lundi...
    et pour repondre a ta question, non, une personne ne peut pas appartenir a plusieurs societes. enfin je pense bien!!

    sinon, que pense tu de ce shema?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    societés (id_societe, raison_sociale, adresse, email, mdp,  tel, ...)
    clients (id_client, id_societe, nom, prenom, email, mdp, ...)
    clients_adresses(id_client, type, adresse, ville, pays)
    id_societe peut etre NULL dans le cas ou la personne est inscrite a titre personnel...

  13. #13
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par redah75 Voir le message
    wow, reveillé et actif a 7h07???
    Normal, Avĉjo MoKo est sur le pont depuis 5h ce matin, garde de ses petites filles oblige.
    Citation Envoyé par redah75 Voir le message
    pour repondre a ta question, non, une personne ne peut pas appartenir a plusieurs societes. enfin je pense bien!!
    sinon, que pense tu de ce shema?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    societés (id_societe, raison_sociale, adresse, email, mdp,  tel, ...)
    clients (id_client, id_societe, nom, prenom, email, mdp, ...)
    clients_adresses(id_client, type, adresse, ville, pays)
    id_societe peut etre NULL dans le cas ou la personne est inscrite a titre personnel...
    J'y vois qqes entorses aux formes normales.
    Tu as bien dit qu'une société peut être représentée dans la table clients en tant que collectif, les données relatives au collectif (email,mdp,...) ne risquent-elles pas d'être redondantes avec celles de la table sociétés ?
    Décidément je vote pour une représentation arborescente.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    Tu as bien dit qu'une société peut être représentée dans la table clients en tant que collectif, les données relatives au collectif (email,mdp,...) ne risquent-elles pas d'être redondantes avec celles de la table sociétés ?
    non, peut etre pas car, dans la table email il s'agit de l'email de la societe (email general) et dans la table client, il s'agit de l'email de la personne en question..., c'est vrai que c'est pas une solution parfaite mais je vais etudier celle dans le lien que tu m'as donne...

    je te tiens informe et merci pour ton temps... et aussi bon week end ne me dis surtout pas que tu reponds aux posts meme un samedi ou dimanche

  15. #15
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par redah75 Voir le message
    non, peut etre pas car, dans la table email il s'agit de l'email de la societe (email general) et dans la table client, il s'agit de l'email de la personne en question..., c'est vrai que c'est pas une solution parfaite mais je vais etudier celle dans le lien que tu m'as donne...
    A la réflexion ton schéma est assez convenable, et même si la solution de gestion en arborescence m'apparaît d'un intérêt intellectuel indéniablement supérieur, sa pratique moins intuitive risque de te poser davantage de problèmes que cette approche plus traditionnelle.
    Citation Envoyé par redah75 Voir le message
    ne me dis surtout pas que tu reponds aux posts meme un samedi ou dimanche
    Les actes sont toujours plus probants que les mots.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  16. #16
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    eh ben, je recois une reponse un samedi a 6h58!!

    je vais te reposer la question autrement: si c'etait toi, qu'est ce que tu aurais fait pour cette base de donnee??
    il y a juste une chose que j'ai oublie de preciser: pour les membres collectifs, j'aurais toujours un contact principal ou je dirai meme un contact administrateur, c'est ce contact qui aura la possibilite de creer les autres comptes liés a sa societe.
    faut il donc avoir ce contact principal dans la table "societes"??

  17. #17
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par redah75 Voir le message
    je vais te reposer la question autrement: si c'etait toi, qu'est ce que tu aurais fait pour cette base de donnee??
    Il serait prétentieux de ma part de me prononcer avec si peu d'éléments.
    Joueur comme je me connais je parie que j'aurais tenter le coup de l'arborescence.
    Citation Envoyé par redah75 Voir le message
    il y a juste une chose que j'ai oublie de preciser: pour les membres collectifs, j'aurais toujours un contact principal ou je dirai meme un contact administrateur, c'est ce contact qui aura la possibilite de creer les autres comptes liés a sa societe.
    faut il donc avoir ce contact principal dans la table "societes"??
    Peut-être peux-tu te contenter de mettre l'id du client administrateur dans la table société.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  18. #18
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    Peut-être peux-tu te contenter de mettre l'id du client administrateur dans la table société.
    Ah oui, bonne idee, j'y ai pas pense

    pour l'instant, j'arrete de t'embeter, je lirai le tuto sur l'arborescence et te tiendrai au curant

    en attendant, je te souhaite un bon week end
    @+

  19. #19
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 901
    Points : 79
    Points
    79
    Par défaut
    Bonjour, j'espere que tu as passe un bon week end

    alors, j'ai lu le tuto d'arborescence mais j'avoue que j'ai pas trop accroché!
    j'ai pas trop aime le fait qu'on mette des chiffres dans les requetes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM   NEW_FAMILLE WHERE  NFM_BG >= 22 AND NFM_BD <= 35
    s'il y a une suppression, ajout ou modification de donnees, cette requete n'est plus valide!! enfin bon!

    en plus je ne vois pas trop comment l'adapter a mon cas, aurais tu une/des idee(s)?? ou devrais je penser a la solution que j'ai proposer (une table societe) ??

    Merci et bon debut de semaine

  20. #20
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par redah75 Voir le message
    Bonjour, j'espere que tu as passe un bon week end
    Très bien merci, quoiqu'épuisant, deux pissouses de 1 et 4 ans, on n'a plus l'habitude Dame 4'in et moi.
    Citation Envoyé par redah75 Voir le message
    alors, j'ai lu le tuto d'arborescence mais j'avoue que j'ai pas trop accroché!
    j'ai pas trop aime le fait qu'on mette des chiffres dans les requetes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM   NEW_FAMILLE WHERE  NFM_BG >= 22 AND NFM_BD <= 35
    s'il y a une suppression, ajout ou modification de donnees, cette requete n'est plus valide!! enfin bon!
    Enfin bon, comme tu dis, il va de soi, qu'il ne faut pas prendre les requêtes à la lettre (au chiffre en l'occurence).
    Citation Envoyé par redah75 Voir le message
    en plus je ne vois pas trop comment l'adapter a mon cas, aurais tu une/des idee(s)?? ou devrais je penser a la solution que j'ai proposer (une table societe) ??
    Il est vrai qu'une arborescence à un seul niveau rend l'exercice nettement moins attrayant.
    Par contre essaye de ne pas trop 'éparpiller' les données entre les 2 tables sociétés et clients.
    Tu peux essayer ça aussi :
    societés (id_societe, id_client, id_référent)
    clients (id_client, id_societe, nom, prenom, email, mdp, tel,...)
    clients_adresses(id_client, type, adresse, ville, pays)
    Tous les noms, email, mdp, tel sont dans la même table, ça favorise une traitement générique. Et une recherche sur les clients et les sociétés portera sur la même table clients.
    Dans la table clients les sociétés seront les clients dont l'id_client de la table sociétés sera égale à leur PK dans la table clients.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT c.id_clients,c.nom
    FROM clients c
    INNER JOIN sociétés s ON s.id_client=c.id_clients
    ORDER BY c.nom
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

Discussions similaires

  1. Demande d'aide pour la conception d'une base de donnee
    Par htmalbenur dans le forum Débuter
    Réponses: 2
    Dernier message: 05/08/2013, 16h43
  2. [MCD] Conception d'une Base de Donnees de gestion d'un bureau d'etude
    Par aabdellatif dans le forum Schéma
    Réponses: 1
    Dernier message: 11/02/2012, 17h11
  3. conception d'une base de donnee
    Par ralf91 dans le forum Bases de données
    Réponses: 5
    Dernier message: 08/08/2007, 20h54
  4. [Conception] Connexion a une base de donnees
    Par Chromatic dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 13/02/2006, 15h54
  5. Conception d'une base de donnees
    Par sara1983 dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 29/04/2005, 14h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo