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

Access Discussion :

Ajout dans une table et relation avec d'autres


Sujet :

Access

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 103
    Par défaut Ajout dans une table et relation avec d'autres
    Bonjour à tous
    Voila j'ai crée un formulaire qui permet d'ajouter un utilisateur jusque la tout va bien. Mais après cette ajout il faut que je remplisse d'autre table avec le Chrono (id) de cette utilisateur et la je ne sais pas comment faire
    Voila 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
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Private Sub Commande5_Click()
     
     
    DoCmd.SetWarnings False
    If Not Nom = Empty And Not Prenom = Empty And Not Groupe = Empty Then
        DoCmd.RunSQL "INSERT INTO T_Utilisateur (Nom, Prenom, Groupe) VALUES ('" & Nom & "' , '" & Prenom & "','" & Groupe & "')"
     
     
        DoCmd.RunSQL "INSERT INTO T_TOTAL (G_Chrono, U_Chrono, Nbr_depassement, Total_mesure, Total_gaz) VALUES ('1','" & U_Chrono & "','0','0','0')"
        DoCmd.RunSQL "INSERT INTO T_TOTAL (G_Chrono, U_Chrono, Nbr_depassement, Total_mesure, Total_gaz) VALUES ('2','" & U_Chrono & "','0','0','0')"
     
     
        MsgBox ("Utilisateur ajouté")
    Exit_Commande5_Click:
        DoCmd.SetWarnings True
        DoCmd.Close
    Else: GoTo suite1
    suite1:
    MsgBox ("Valeur(s) manquante(s)")
    End If
     
    End Sub
    Dans les requetes INSERT je met U_Chrono mais je suis bien conscient qu'il ne sais pas a quoi se referencé.
    J'aurai aimé faire cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    U_Chrono = DoCmd.RunSQL "SELECT T_UTILISATEUR.U_Chrono From T_UTILISATEUR Where T_UTILISATEUR.nom = '" & nom & "'
    Mais cela ne marche pas (erreur)
    Quelqu'un à t'il une solution à ce problème ou par une autre methode ?
    Merci à tous

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 25
    Par défaut
    U_CHRONO est une valeur de quel type ?

    si c'est du numérique il faut que tu fasse plutot ainsi pour tes insert into :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
        DoCmd.RunSQL "INSERT INTO T_TOTAL (G_Chrono, U_Chrono, Nbr_depassement, Total_mesure, Total_gaz) VALUES ('1'," & U_Chrono & ",'0','0','0')"
        DoCmd.RunSQL "INSERT INTO T_TOTAL (G_Chrono, U_Chrono, Nbr_depassement, Total_mesure, Total_gaz) VALUES ('2'," & U_Chrono & ",'0','0','0')"

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 103
    Par défaut
    Ok
    mais cela ne change rien il ne connait pas la valeur de U_Chrono corréspondant au nouveau uilisateur

  4. #4
    Expert éminent

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Par défaut
    Bien sûr, runSQL ne s'applique qu'aux requêtes action et ne retourne pas de valeur. Pour obtenir une valeur, il faut utiliser les recordsets

    http://warin.developpez.com/access/dao

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 103
    Par défaut
    est-ce que c'est faisable avec quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     
    'Déclaration des variables
    Dim cnx As ADODB.Connection
    Dim rst As ADODB.Recordset
    Dim cmd As ADODB.Command
    Dim prm1 As ADODB.Parameter
     
    Set cnx = New ADODB.Connection
    Set rst = New ADODB.Recordset
    Set cmd = New ADODB.Command
    Set prm1 = New ADODB.Parameter
    'Définition du pilote de connexion
    'cnx.Provider = "Microsoft.Jet.Oledb.4.0"
    Chemin = ThisWorkbook.Path & "\bd4.mdb"
     
    cnx.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source = " & Chemin & ";"
    cnx.Execute "Update T_TOTAL Set ....................
    rst.Open "INSERT INTO .....................
    ?

    Peut etre avec un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set U_Chrono = rst.Execute("SELECT ...
    Mais je n'ai que des erreur et je ne m'y connais pas tellement avec cette syntaxe

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 103
    Par défaut
    non ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 09/12/2013, 13h57
  2. ajout dans une table avec clé étrangère
    Par lahmar.abdel1 dans le forum Hibernate
    Réponses: 0
    Dernier message: 30/03/2010, 15h59
  3. Ajout dans une table "Verbe" (relation n,n)
    Par DonKnacki dans le forum Linq
    Réponses: 1
    Dernier message: 17/03/2010, 10h14
  4. Réponses: 1
    Dernier message: 31/10/2008, 00h20
  5. big ajout dans une table
    Par bachilbouzouk dans le forum ASP
    Réponses: 4
    Dernier message: 19/04/2005, 10h22

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