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

PL/SQL Oracle Discussion :

Attributs d'une table non connus à la programmation


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2011
    Messages : 13
    Par défaut Attributs d'une table non connus à la programmation
    Bonjour,

    Je suis débutant en PL/SQL et je dois établir une relation ..x -1 entre deux bases de données. Par exemple une table "Personnel" et une table "ordinateur". Chaque personne a un ou plusieurs ordinateurs, mais un ordinateur n'appartient qu'à une seule personne. Il faut pouvoir passer rapidement d'une base à l'autre. (sans recherche)

    C'est-à-dire que la base de donnée ordinateur aura un "foreign key" personnel_id, mais la base de donnée "Personnel" devrait en avoir plusieurs, puisque chaque personne peut avoir plusieurs ordinateurs.. On ne connaît pas à la programmation le nombre d'ordinateur qu'aura une personne..
    Comment s'y prend-t-on pour réaliser cela sans données superflues?

    En vous remerciant beaucoup pour votre aide,

    Flavien

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    C'est une modélisation simple, une table Personne, une table Ordinateur qui contient l'id_personne.

    Regardez les tutoriels sur ce site, ils sont très fournis !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2011
    Messages : 13
    Par défaut
    Oui mais pour trouver tous les ordinateurs qu'une personne possède, il faut parcourir alors toute la liste des ordinateurs "WHERE id_personne=xx" non ?
    Il me semble que ce n'est pas rapide si la liste est longue. N'y a-t-il pas un autre moyen ?

    Effectivement les tutoriels de ce site m'aident beaucoup ! Mais je n'ai pas réussi à trouver ma réponse dans ces tutoriels.

    Merci beaucoup pour votre attention,

    Flavien

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    C'est à ça que servent les index, ça évite de parcourir toute la table !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2011
    Messages : 13
    Par défaut
    ah ??
    Donc avec :
    "une table Personne, une table Ordinateur qui contient l'id_personne"

    avec
    FOREIGN KEY REFERENCES Table_personne (id_personne)

    Si je mets "DELETE Table Ordinateur ... WHERE id_personne =xx", il ne parcourra pas toute la table pour supprimer les différents ordinateurs ?

  6. #6
    Membre éclairé Avatar de magicbisous-nours
    Inscrit en
    Octobre 2005
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 277
    Par défaut
    En effet, pas si tu as un index sur ta table Ordinateur.... Regardes du côté des index (tu dois avoir des tutoriaux sur ce site)....

Discussions similaires

  1. Non attribution d'une table
    Par cococmoi dans le forum SAS Base
    Réponses: 6
    Dernier message: 18/03/2013, 17h30
  2. Changer la position d'un attribut dans une table?
    Par gui38 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/01/2007, 21h27
  3. Si attribut d'une table=0 alors
    Par wishmasteer dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 16/06/2006, 15h03
  4. Réponses: 1
    Dernier message: 27/03/2006, 16h58
  5. Comment connaitre le type d'un attribut dans une table?
    Par Abdou_9002 dans le forum Bases de données
    Réponses: 1
    Dernier message: 02/03/2006, 10h07

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