Bonjour,
Je n'en suis pas à ma première requête INSERT INTO, mais là, je ne trouve pas le problème...
Je cherche à insérer un enregistrement dans une table de jointure (t_Projets_REL_Factures). À toutes fins utiles, l'intégrité référentielle est appliquée de part et d'autre de la table de jointure.
Les deux champs de la table de jointure sont des clés primaires, et je n'ai apparemment pas de problème de doublon ou de Null. Les enregistrements à lier par la table de jointure existent bien dans chacune des tables t_Factures et t_Projets (donc les clés de ces tables, sur lesquelles doit se faire la jointure, sont remplies).
Bref, il reste juste à créer un enregistrement dans la table de jointure en renseignant les deux champs avec les valeurs des clés des tables.
Voici le code :
*Le premier chiffre est en dur pour simplifier, mais il sera aussi rendu dynamique plus tard.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Dim strSQL As String Dim dbs As DAO.Database Set dbs = CurrentDb() 'Crée/insère enregistrement dans table t_Projets_REL_Factures strSQL = "INSERT INTO t_Projets_REL_Factures (Projet_ID, Facture_ID) VALUES (1373, " & Cstr(.txtID_Facture) & "); " dbs.Execute strSQL Set dbs = Nothing
La fenêtre Espions me donne bien ceci à l'exécution:
Aucun enregistrement n'est ajouté à la table de jointure.
Code : Sélectionner tout - Visualiser dans une fenêtre à part strSQL = "INSERT INTO t_Projets_REL_Factures (Projet_ID, Facture_ID) VALUES (1373, 1357); "
Pourtant, lorsque je tape dans la fenêtre Exécution la ligne :
l'enregistrement s'ajoute bien dans ma table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part currentdb.Execute "INSERT INTO t_Projets_REL_Factures (Projet_ID, Facture_ID) VALUES (1373, 1357); "
Une idée du problème?
Partager