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 :

Pb d'écriture intempestive dans table avec SQL insert into


Sujet :

Requêtes et SQL.

  1. #1
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Pb d'écriture intempestive dans table avec SQL insert into
    Bonjour,

    j'ai un souci un peu étrange et en même temps la cause doit être assez standard mais j'trouve pas. A noter que je ne suis pas spécialiste...

    C'est une appli qui communique des consignes sur l'état d'avancement de réparations d'instruments de bord montés sur avions à un service appelé AOG-desk (AOG pour Aircraft On Ground, c'est à dire un avion bloqué au sol, avec généralement des passagers dedans, pour cause de non disponibilité d'un instruement de navigation par exemple). Tout ça pour préciser qu'un instrument est nommé RCN dans l'application.

    Voilà l'affaire :
    j'ai un formulaire basé sur une requête dénommée 'Consignes EL-ES'.
    Cette requête fait concorder les données d'une table 'Consignes' et d'une table 'RCNs'.
    Le but est d'ajouter une consigne dans la table 'Consignes'. Une fois fait, le formulaire est rafraichi. Entre temps, l'utilisateur sera passé par un autre formulaire qui lui demande quel RCN il compte ajouter dans la liste.
    J'utilise le code suivant pour écrire dans la table 'Consignes' :

    SQL = "insert into Consignes values('" & lstRCN & "','" & txtCommentaires & "','" & txtSemaine & "')"
    DoCmd.RunSQL (SQL)

    où lstRCN est la zone de liste avec le RCN. Jusque là tout va bien, l'enregistrement est créé.
    Mais à la sortie de la procédure, une ligne (toujours la même) de la table a été modifiée au niveau du RCN : il est écrasé par le RCN choisi.
    Donc j'ai donc 2 lignes avec le même RCN dont l'un possède les commentaires d'un RCN saisi précédement.
    Bref, sans que je demande quoi que ce soit, on écrit dans ma table à l'insu de mon plein gré !
    Pour essayer de bloquer l'accès à la table une fois que j'ai fini d'écrire dedans, j'ai essayé de la renommer via la commande 'Rename'. Et là j'obtiens le message d'erreur suivant :
    Erreur d'exécution '3211' :
    Le moteur de base de données n'a pas pu verrouiller la table 'Consignes'
    car elle est déjà utilisée par une autre personne ou un autre processus.

    Malgré mes recherches sur le net, je reste comme une andouille face à ce bug.
    Avant de lancer le renommage, je ferme tous les formulaires et toutes les tables via VB si bien qu'il ne reste plus rien d'ouvert. Je précise aussi que je ferme les recordsets qui ont accédé à la table avant.

    Je vous remercie déjà d'avoir lu jusque là et pour votre éventuelle aide.

    Johann

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    sur quel événement as-tu placé ce code VBA d'insertion ?
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  3. #3
    Candidat au Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Avril 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2004
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    sur le clic d'un bouton appelé 'Enregistrer'. L'utilisateur enregistre sa consigne une fois qu'il a renseigné le RCN et les commentaires associés.
    Je précise que ce bouton est sur un formulaire dénommé 'Nouvelle consigne' qui est lui-même ouvert par un clic sur le bouton 'Ajouter consigne' disposé sur le formulaire principal (qui présente sous forme tabulaire toutes les consignes renseignées pour la semaine en cours).

    J'ajoute également que la modification non souhaitée de RCN se produit lors de la fermeture du formulaire 'Nouvelle consignes'.

    Merci.

Discussions similaires

  1. Verrouiller une ligne dans une table avec sql server
    Par benabdessamed dans le forum Développement
    Réponses: 30
    Dernier message: 03/10/2012, 12h49
  2. Nombre total d'éléments dans plusieurs tables avec SQL
    Par mistermiss dans le forum Bases de données
    Réponses: 5
    Dernier message: 06/05/2009, 23h23
  3. Charger Fichiers XML dans une table avec SQL*LOADER
    Par devdev2003 dans le forum SQL
    Réponses: 2
    Dernier message: 14/01/2008, 10h40
  4. Ajout dans table en sql
    Par lito74 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 24/10/2006, 17h41
  5. insertion dans table avec plusieurs clés étrangères
    Par philippe281281 dans le forum Administration
    Réponses: 2
    Dernier message: 14/06/2006, 18h35

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