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 et SQL. Discussion :

Souci avec Update


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut Souci avec Update
    bonjour,

    J'ai une table T_ARTICLE sous Oracle, avec un ID_ARTICLE et un champ REFERENCE.
    J'ai exporté cette table sous excel, et j'ai rajouté une colonne REFERENCE_2.
    Dans Access, j'ai lié la table T_ARTICLE, et j'ai importé le tableau Excel (ARTICLE_CODIF).
    J'ai fait le lien entre les 2 avec l'ID_ARTICLE.
    Je voudrais faire une mise à jour de T_ARTICLE.REFERENCE avec les valeurs ARTICLE_CODIF.REFERENCE_2.
    Après plusieurs requetes qui me donnait l'erreur : L'opération doit utiliser une requête qui peut être mise à jour. (Erreur 3073), j'ai trouvé une synthaxe sans erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE [TOPERP_T_ARTICLE] SET [REFERENCE] =[ARTICLE_CODIF].[REFERENCE_2]  WHERE [TOPERP_T_ARTICLE].[ID_ARTICLE] IN (SELECT [ARTICLE_CODIF].[ID_ARTICLE] FROM [ARTICLE_CODIF]),
    mais a l'exécution, Access me demande d'entrer une valeur de parametre pour ARTICLE_CODIF.REFERENCE_2.

    J'y suis depuis ce matin, et je ne vois pas comment je pourrais m'en sortir.

    Merci d'avance

    Frandis

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 12
    Points : 14
    Points
    14
    Par défaut
    Bjr,

    Voici peut être une solution qui pourra vous satisfaire, si j'ai bien compris le problème

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    UPDATE ARTICLE_CODIF LEFT JOIN TOPERP_T_ARTICLE ON ARTICLE_CODIF.ID_ARTICLE = TOPERP_T_ARTICLE.ID_ARTICLE SET TOPERP_T_ARTICLE.REFERENCE = [ARTICLE_CODIF].[REFERENCE_2];
    A+

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut


    Merci Jean, c'est nickel!

    C'est exactement ce qu'il fallait.

    En fait, même après avoir fait une relation, il faut malgré tout la refaire dans la requete (en mode graphique) en appellant la deuxième table.

    Une autre solution plus biscornue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE ARTICLE_CODIF INNER JOIN TOPERP_T_ARTICLE ON ARTICLE_CODIF.ID_ARTICLE=TOPERP_T_ARTICLE.ID_ARTICLE SET TOPERP_T_ARTICLE.REFERENCE = ARTICLE_CODIF.REFERENCE_2
    WHERE (((TOPERP_T_ARTICLE.ID_ARTICLE) In (SELECT [ARTICLE_CODIF].[ID_ARTICLE] FROM [ARTICLE_CODIF])));

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

Discussions similaires

  1. [MySQL] soucis avec UPDATE
    Par jpkerloch dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/05/2010, 11h14
  2. petit soucis d'update avec reel
    Par psychosiffleur dans le forum Windows Forms
    Réponses: 6
    Dernier message: 26/02/2010, 14h04
  3. Soucis avec une requête update
    Par pabois dans le forum Zend_Db
    Réponses: 2
    Dernier message: 23/01/2009, 17h47
  4. quelques soucis avec word 2000
    Par ramchou dans le forum Word
    Réponses: 3
    Dernier message: 06/09/2004, 18h13
  5. Réponses: 4
    Dernier message: 16/02/2003, 12h16

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