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 :

Erreur lors de la mise à jour d'une table SQL Server 2008


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Erreur lors de la mise à jour d'une table SQL Server 2008
    Bonjour. J'essaie de mettre à jour via Access 2003 et un lien ODBC une base de données SQL Server 2008.

    Quand je fais un update simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    update crpdta_f0006 set mcdl01='SECTEUR 1M'
    where  mcmcu='         W10';
    Cela fonctionne. Donc j'ai bien la connection et les accès en mise à jour sur la table.

    Quand je lance un update d'une table en utilisant des valeurs d'une 2ème table,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    update crpdta_f0006 set mcdl01=(select szdl01 from crpdta_f0006z1 where szmcu=mcmcu) where mcmcu in (select szmcu  from crpdta_f0006z1 where szmcu=mcmcu)
     and mcmcu='         W10';
    J'obtiens l'anomalie "Error operation must use updateable query".

    Pourriez-vous m'aider ? Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 628
    Points : 34 333
    Points
    34 333
    Par défaut
    salut,
    tu fais deux requêtes IN SELECT,
    essaye de faire une jointure sur tes tables à la place.
    d'autant plus que je suppose que ta première sous requete IN ne te renvoie pas qu'un seul enregistrement
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Merci. Je fais 2 in car je ne mets à jour que si existe (le 2ème sert de contrôle). Si, ma requête ne peut renvoyer qu'un seul enregistrement.

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/10/2012, 10h14
  2. mise à jours d'une base sql server
    Par nahoula1231 dans le forum VB.NET
    Réponses: 0
    Dernier message: 18/08/2010, 16h56
  3. [AC-2007] mise à jour d'une table SQL server depuis MS Access
    Par avalenza dans le forum Projets ADP
    Réponses: 1
    Dernier message: 10/02/2010, 20h04
  4. Lenteur d'une mise à jour sur une base SQL Server
    Par Maximoute dans le forum Administration
    Réponses: 8
    Dernier message: 25/05/2009, 09h08

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