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

SQL Oracle Discussion :

Problème dans une requête


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 30
    Par défaut Problème dans une requête
    bonjour,
    je suis entrain de developper un mini projet sous netbeans et oracle ,donc pour calculer les salaires des employés j'ai besoin de deux tables employe et salaire ou jai comme champ dans la table employer les coordonnées de chaque employe (nom ,prenom ,ncin,profession,n_cnss) et dans la table salaire j'ai les nbres des heures et les prix des heurs et le mois(lada) et le ncin de chaque employe
    pour clculer le salaire je fais la jointure entre ces deux tables voila ma requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
          String queryString3 = "SELECT ncin,nom,prenom,profession,n_cnss FROM employe E FULL OUTER JOIN salaire S ON E.ncin=S.ncin  WHERE ncin=? and lada=? "; // les ? représentent les emplacements des valeurs qui seront insérées ci-après
    PreparedStatement stm3 = con.prepareStatement(queryString2);
    stm3.setInt(1, alpha); // on insère le paramètre dans le premier ?
    stm3.setString(2, mois); // on insère le paramètre dans le second ?      String queryString3 = "SELECT ncin,nom,prenom,profession,n_cnss FROM employe,salaire WHERE ncin=? and lada=? and employe.ncin=salaire.ncin"; // les ? représentent les emplacements des valeurs qui seront insérées ci-après
    
    ResultSet rst3 = stm3.executeQuery();
    mais lorsque jai essayé de compiler la requete seulement ca me donne comme erreur:java.sql.SQLException: ORA-00918: définition de colonne ambigu
    SVP aider moi
    merci

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 134
    Par défaut
    Tu ne précises pas dans la clause SELECT quelle est la colonne NCIN que tu souhaites retourner (celle de la table EMPLOYE ou celle de la table SALAIRE).
    Prends l'habitude de toujours qualifier (indiquer le nom de table ou d'alias) toutes les colonnes dans tes requêtes ; déjà tu éviteras ce genre de problème, ensuite ta requête sera plus lisible (même si plus encombrée) parce que tu sauras à la relecture d'où viennent les colonnes mises en oeuvre sans avoir besoin de connaitre la structure des tables.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre averti
    Inscrit en
    Mai 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 30
    Par défaut
    je l'ai changé de cette facon mais toujours la meme erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        SELECT s.nbreheure,s.prixheure,s.nbreheuresupp,s.prixheuresupp,s.avance FROM salaire s INNER JOIN employe e ON e.ncin=s.ncin where ncin=? and lada=?

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 134
    Par défaut
    Même la clause WHERE est à prendre en compte pour la qualifier les noms de colonne
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre averti
    Inscrit en
    Mai 2010
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 30
    Par défaut
    jai pas compris ta solution SVP aide moi pour trouver la bonne solution comment je peux modifier cette requete ??

  6. #6
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    Juillet 2012
    Messages
    9 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9 307
    Billets dans le blog
    15
    Par défaut


    Citation Envoyé par nouna10 Voir le message
    jai pas compris ta solution SVP aide moi pour trouver la bonne solution comment je peux modifier cette requete ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     WHERE ncin=? and lada=?
    Comme vous l’a expliqué al1_24 , vous ne précisez pas dans la clause WHERE
    les tables auxquelles appartiennent les champs (colonnes) ncin et lada.

    Vous l’avez bien fait après le SELECT
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc..
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème dans une requête
    Par clettebou dans le forum Requêtes
    Réponses: 2
    Dernier message: 14/10/2006, 19h03
  2. [Factoring_Clause]Problème dans une requête
    Par media dans le forum Oracle
    Réponses: 4
    Dernier message: 30/08/2006, 13h47
  3. [Access] Problème dans une requête SQL avec INNER JOIN ?
    Par bds2006 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/06/2006, 10h57
  4. Problème dans une requête SQL avec AS et ON ?
    Par bds2006 dans le forum Bases de données
    Réponses: 9
    Dernier message: 26/06/2006, 15h25
  5. problème dans une requête
    Par pierrOPSG dans le forum Langage SQL
    Réponses: 2
    Dernier message: 18/11/2005, 10h28

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