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 :

ajouter x données incrémentées


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 40
    Points : 17
    Points
    17
    Par défaut ajouter x données incrémentées
    Bonjour,

    Je voudrais créer une requête ajout pour créer autant d'enregistrement que précisé dans un formulaire.
    Concrètement : dans le formulaire, l'opérateur renseigne le champ "Qté", par exemple 10, et "numéroter à partir de ", par exemple 101, puis il clic sur un bouton qui lance ma requeête. Dans celle-ci, je voudrais ajouter à une table les enregistrements 101, 102, 103 etc ... jusqu'à 110.

    Auriez-vous une piste ?

    Merci.
    Bonne journée

    Claire.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour



    Quel est le but de cette manoeuvre ?
    Pourquoi créer tous ces enregistrements à la fois, et non au fur et à mesure ?

    C'est pour mieux comprendre le contexte

    Starec

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 40
    Points : 17
    Points
    17
    Par défaut
    Bonjour Starec,

    C'est pour automatiser la numérotation et éviter le risque d'oubli.
    J'ai limité à 10 dans mon exemple mais réellement, cela va bcp plus loin et j'aurais à répéter cette requête plusieurs fois avec un numéro de départ différent.
    Concrètement, c'est pour numéroter des chambres d'hotels. Le formulaire présente plusieurs onglets : RDC, R+1 etc ... jusqu'à R+7. Sur RDC, les chambres iront de 101 (par exemple mais ça peut être différent) à 101+x. Sur R+1, de 201 à 201+x etc ... jusqu'à R+7 où cela ira de 801 à 801+x ...
    La table où j'ajoute ces enregistrements présente ensuite les opérations à effecter dans chaque chambre que l'opérateur aura à compléter (changer une lampe, changer la moquette etc ..., environ 20 opé par chambre). C'est donc pour lui préparer ce formulaire avec les numéros de chambre par étage préremplis...

    Voilà, j'espère avoir répondu à ta question sans t'emmêler les pinceaux !

    Merci pour ton aide.

    Claire.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 352
    Points : 415
    Points
    415
    Par défaut
    je suppose que si ton x est saisi dans un formulaire, tu cliques sur un bouton pour valider et faire tes insertions.

    Dans ce cas, tu pourrai faire comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    private sub ton_bouton_click()
          dim debut as integer
          dim fin as integer
     
          debut = me.ton_champ_debut
          fin = me.qté
     
          for i = debut to fin
                 currentdb.execute ("Insert into ta_table (num_chambre) values (" &i &")")
          next i
    end sub

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 40
    Points : 17
    Points
    17
    Par défaut
    Merci !
    C'est bizarre, il ne se passe rien ...
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Commande199_Click()
     
          Dim debut As Integer
          Dim fin As Integer
     
          debut = Me.NUM
          fin = Me.QTE_CH
     
          For i = debut To fin
            CurrentDb.Execute ("Insert into T_chkl_ch (n_ch) values (" & i & ")")
          Next i
     
    End Sub
    Les champs du formulaire sont "indépendants", est-ce que ça viendrait de là ?

    Merci encore !

    Claire.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 352
    Points : 415
    Points
    415
    Par défaut
    il ne se passe rien ? cad ? Il n'insère rien dans ta table ?
    Même pas un petit message d'erreur ?

    Essaie d'utiliser des points d'arrêts pour vérifier par où il passe...

    [edit]

    je crois qu'il faut plutôt lui dire que fin = debut + qté

    [fin edit]

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 40
    Points : 17
    Points
    17
    Par défaut
    En effet, rien de rien, aucun ajout dans la table.

    J'ai essayé en mettant des valeurs et maintenant j'ai un message d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Commande199_Click()
     
          Dim debut As Integer
          Dim fin As Integer
     
          debut = 101
          fin = debut + 30
     
          For i = debut To fin
            CurrentDb.Execute ("INSERT INTO T_chkl_ch (n_ch)) values (" & i & ")")
          Next i
     
    End Sub
    Le message d'erreur est "erreur de synthaxe dans l'expression INSERT INTO"

    On y est presque !!

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 352
    Points : 415
    Points
    415
    Par défaut
    et bien il me semble que tu as une parenthèse femrante en trop juste après le nom du champ (n_ch)

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 40
    Points : 17
    Points
    17
    Par défaut
    oups, je m'en suis aperçue mais le serveur était saturé et je n'ai pas modifier mon message...

    ça marche impec maintenant ! Le pb venait bien de fin=debut + Me.QTE_CH

    Maintenant, je voudrais aussi que le champ n_fiche de cette même table prenne la valeur de RefFiche de mon formulaire pour tous CES nouveaux enregistrements ... Peux-tu encore m'aider un peu STP ???

    Merci !!

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 352
    Points : 415
    Points
    415
    Par défaut
    il suffit de rajouter le champ à ta requête insert
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    currentdb.execute("Insert into ta_table (num_chambre, n_fiche) values (" &i &"," &me.reffiche &")"
    si ton champ refFiche est de type string, il faut le mettre entre cote

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 40
    Points : 17
    Points
    17
    Par défaut
    MERCI !

    Tout cela fonctionne à merveille !

    Tu es un prince !

    @ +

    Claire.

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

Discussions similaires

  1. ajout de données à partir d'un fichier texte
    Par drakenzara dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 14/04/2006, 12h39
  2. requete d'ajout de données
    Par Australia dans le forum Access
    Réponses: 10
    Dernier message: 10/01/2006, 19h32
  3. Réponses: 22
    Dernier message: 07/12/2005, 13h51
  4. ajouter des données dans une requête htttp en js
    Par jeromejanson dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/10/2005, 15h34
  5. souci sur ajout de données de zone de liste
    Par Tierisa dans le forum IHM
    Réponses: 6
    Dernier message: 27/09/2005, 08h30

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