Bonjour,

Je dispose d'une base de données clients. Chaque client a des coordonnées, une ou des chaudières, des éléments de climatisation, et des entretiens.

La table client est la table "mère" et elle comporte donc plusieurs tables "filles" qui elles mêmes peuvent avoir des "petites-filles".

Lorsque je veux supprimer un CLIENT, je dois supprimer au préalable toutes les données relatives à ce clients dans les tables "petites-filles", ensuite "filles". Le problème arrive au moment où je veux supprimer mon client par le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Set rs6 = CurrentDb.OpenRecordset("SELECT * FROM Clients WHERE IndexClient = " & Me.IndexClient & "")
        If rs6.EOF = False Then
            rs6.Delete
        End If
Il se produit une chose étrange : le client correspondant à Me.IndexClient est bel et bien supprimé. Cependant, le système crée un nouveau client en incrémentant l'index et y reporte certaines données de l'enregistrement précédent.



Si j'avais (en shématisant les colonnes de ma table)
Index ____ NuméroClient ____ Nom__________ Rue _____________ Ville
1 ___________ 4 _________ Albert_____ rue des peupliers______ Brugges

je me retrouve avec :
Index ____ NuméroClient ____ Nom__________ Rue _____________ Ville
2 ___________ _ _________ Albert_____ rue des peupliers______ Brugges

Il supprime donc bien la ligne de mon client mais en crée une par la suite. Pourquoi????

D'avance merci

Olivier