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

 Oracle Discussion :

Clé primaire d'une table


Sujet :

Oracle

  1. #1
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut Clé primaire d'une table
    Bonjour tout le monde;


    Voila je vous explique mon problème mais je tiens à préciser tout d'abord que je suis débutante.

    Actuellement je suis entrain d'écrire des requêtes SQL afin de faire des Etats de sortie (Reports) [Je travaille sur une base de données ORACLE 11R2, et comme application eBS 12.1.3]

    Je donne l'exemple d'un PO (Bon de commande), j'essaye de chercher les tables correspondante au PO afin de construite ma petite requête mais j'ai du mal a trouver des jointure.

    Je choisi toujours des jointure avec un ID mais le problème c'est que lorsque j'affiche le résultat de ma requête j'ai une information redondante


    J'ai besoin de votre aide parce que je suis a Deux doigts abandonner



    Merci

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    Bonjour,

    lisez le post-it sur ce forum concernant les règles de présentation d'un problème.

    Là on ne peut rien faire, pas assez d'info

  3. #3
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par punkoff Voir le message
    Bonjour,

    lisez le post-it sur ce forum concernant les règles de présentation d'un problème.

    Là on ne peut rien faire, pas assez d'info

    Vous voulez que j'affiche ma requête ??
    Ma question est très simple : je cherche un moyen de connaitre la clé primaire pour éviter la redondance de l'information.



    Merci

  4. #4
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Il nous faudrait :
    - la description des tables
    - un jeu de données
    - le résultat attendu
    - le résultat obtenu
    - la requête
    - une description précise du problème avec un exemple précis
    ~ Lola ~

  5. #5
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    Bah, avoir la clef primaire ne signifie pas ne pas avoir de doublons.

    Sous oracle pour retrouver les clefs primaire il faut utiliser les vues user_constraints & user_cons_columns (entre autre).

  6. #6
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par punkoff Voir le message
    Bah, avoir la clef primaire ne signifie pas ne pas avoir de doublons.

    Sous oracle pour retrouver les clefs primaire il faut utiliser les vues user_constraints & user_cons_columns (entre autre).

    alors comment faire pour avoir une requête qui me donne l'information désirée sans être répétée ??


    Merci

  7. #7
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Tu pourrais utiliser DISTINCT.
    Mais sans plus d'infos sur ton problème précis on ne pourras pas t'aider.
    ~ Lola ~

  8. #8
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par lola06 Voir le message
    Tu pourrais utiliser DISTINCT.
    Mais sans plus d'infos sur ton problème précis on ne pourras pas t'aider.
    voila ma requête:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    SELECT
    to_char(EAM.SCHEDULED_START_DATE,'dd/mm/yyyy') as dd,
    to_char (EAM.SCHEDULED_COMPLETION_DATE,'dd/mm/yyyy') as df,
    EAM.PRIORITY_DISP as pr,
    EAM.CAUSE_CODE as cauz,
    EAM.WIP_ENTITY_NAME as val,
    EAM.INSTANCE_NUMBER as cd_eqp,
    EAM.OWNING_DEPARTMENT_CODE as cd_sec,
    round((wdj.SCHEDULED_COMPLETION_DATE - wdj.SCHEDULED_START_DATE) * 24, 3) AS duration,
    MTLEAR.ASSET_GROUP_DESCRIPTION AS ASGD,
    MTLEAR.EAM_LOCATION AS EAMLOC,
    fu.user_name as us_na,
    ECOV.DESCRIPTION AS DESO,
    ECOV.OPERATION_CODE AS OPER_COD,
    WIPV.REQUIRED_QUANTITY AS REQ_QUANT ,
    WIPV.ITEM_DESCRIPTION AS ITDES,
    to_char (WIPV.DATE_REQUIRED,'dd/mm/yyyy') AS DATE_REQ,
    WIPV.CONCATENATED_SEGMENTS AS CONSEG,
    A1.RESOURCE_CODE as ressource,
    A1.DEPARTMENT_CODE as section,
    A2.DESCRIPTION as de_en,
    A3.UNIT_PRICE as prix ,
    A3.UOM as ut,
    A4.ACTUAL_MATERIAL_COST as cr,
    A4.ESTIMATED_MATERIAL_COST as ce,
    A4.ACTUAL_LABOR_COST as mo,
    A4.ACTUAL_EQUIPMENT_COST as peq,
    A4.ESTIMATED_TOTAL_COST as pt,
    A5.RESOURCE_RATE as cress,
    A6.INSTANCE_NAME as nom
    from 
    EAM_WORK_ORDERS_V EAM,
    WIP_DISCRETE_JOBS wdj,
    MTL_EAM_ASSET_REBUILDS_DTLS_V MTLEAR,
    FND_USER fu,
    EAM_CFR_OPERATIONS_V ECOV,
    EAM_CFR_MATERIALS_V WIPV,
    WIP_OPERATION_RESOURCES_V A1,
    WIP_ENTITIES A2,
    WIP_EAM_DIRECT_ITEMS A3,
    WIP_EAM_COST_DETAILS_V A4,
    EAM_RESOURCES_V A5,
    WIP_OP_RESOURCE_INSTANCES_V A6
    where 
    EAM.WIP_ENTITY_ID= wdj.WIP_ENTITY_ID AND
    EAM.INSTANCE_NUMBER=MTLEAR.INSTANCE_NUMBER AND
    fu.user_id=wdj.created_by AND
    EAM.WIP_ENTITY_ID= ECOV.WIP_ENTITY_ID AND
    EAM.WIP_ENTITY_ID=A1.WIP_ENTITY_ID and 
    ECOV.WIP_ENTITY_ID=WIPV.WIP_ENTITY_ID and
    A2.WIP_ENTITY_ID=EAM.WIP_ENTITY_ID and 
    A3.WIP_ENTITY_ID=EAM.WIP_ENTITY_ID and 
    A4.WIP_ENTITY_ID=EAM.WIP_ENTITY_ID and
    A5.WIP_ENTITY_ID=EAM.WIP_ENTITY_ID and
    A6.WIP_ENTITY_ID=EAM.WIP_ENTITY_ID and
    EAM.WIP_ENTITY_NAME='18103';



    et voila le résultat de la requête, l'information répétée en 4 fois (Pièce jointe)
    Fichiers attachés Fichiers attachés

  9. #9
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    L'information n'est pas répétée 4 fois, les 4 lignes sont toutes différentes.

    Il faudrait que tu mettes la structure de tes tables avec clés primaires/étrangères.

    Et surtout le résultat que tu attends.
    ~ Lola ~

  10. #10
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par lola06 Voir le message
    L'information n'est pas répétée 4 fois, les 4 lignes sont toutes différentes.

    Il faudrait que tu mettes la structure de tes tables avec clés primaires/étrangères.

    Et surtout le résultat que tu attends.
    Désolée, Pas 4 fois mais 2 fois mais elle sont répétées
    Peux-tu développer ton idée " Il faudrait que tu mettes la structure de tes tables avec clés primaires/étrangères"

    et comment choisir ces clés !!


    Merci

  11. #11
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Pour avoir la déscription des tables DESC NomTable
    Et tes clés primaires/étrangères sont définies lors de la création de la base de données, elles te permettent de connaitre les liens entre les tables.

    Un petit tour par les tutoriels SQL pourrais te donner les bases.
    ~ Lola ~

  12. #12
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par lola06 Voir le message
    Pour avoir la déscription des tables DESC NomTable
    Et tes clés primaires/étrangères sont définies lors de la création de la base de données, elles te permettent de connaitre les liens entre les tables.

    Un petit tour par les tutoriels SQL pourrais te donner les bases.
    C'est Oracle qui a pris le soin de créer toutes les tables alors je ne pourrai pas savoir quelles sont les clés primaires

  13. #13
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Tu n'as pas un modèle de données ?
    J'ai du mal à croire que tu n'ai aucun moyen de connaitre cette information de base sur tes données.
    ~ Lola ~

  14. #14
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Installe "Sql Developer", outil gratuit d'oracle. Ca te permettra facilement de trouver les PK et les contraintes, et aussi de tester tes requêtes.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  15. #15
    Membre du Club
    Femme Profil pro
    Consultant E-Business
    Inscrit en
    Juin 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Juin 2011
    Messages : 83
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par McM Voir le message
    Installe "Sql Developer", outil gratuit d'oracle. Ca te permettra facilement de trouver les PK et les contraintes, et aussi de tester tes requêtes.
    c'est ce que j'utilise en ce moment.

  16. #16
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Bon, c'est vrai j'utilise rarement sqldev, et c'est con il n'affiche pas la PK dans la liste des colonnes d'une table, il faut aller dans l'onglet Contraintes pour afficher les colonnes de la Primary Key
    Il y a peut être une astuce plus simple pour avoir les pk en visu directement, je vais voir.
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/09/2005, 22h06
  2. Comment comment définir une clef primaire dans une table??
    Par nek_kro_kvlt dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/02/2005, 21h06
  3. Comment avoir 2 clés primaires dans une table
    Par Guigui_ dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 18/01/2005, 08h29
  4. [Bdd ]Trouver la clé primaire d'une table
    Par drosof dans le forum JDBC
    Réponses: 3
    Dernier message: 11/08/2004, 10h58
  5. récupérer la clef primaire d'une table
    Par orionis69 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 28/02/2004, 13h00

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