Bonsoir developpez.com,

J'ai un soucis au niveau d'une requête SQL "DELETE"

J'ai une base de donnée avec des tables:
TMatos: référencement des matériels
TPannes: référencement des pannes associées aux matériels
Ttechnicien: référencement des techniciens s'occupant des pannes

Et donc la suppression d'un matériel plante si une panne y est associée, suppression d'une panne plante si un technicien y est associé.

Je comprend d'où vient le problème, on ne peut supprimer un matériel avec une panne associé puisque ça créerait une erreur dans la table panne et idem pour la suppression d'une panne.

Seulement je ne trouve pas la solution pour vérifier si par exemple une panne est associée à un matériel :/

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
23
24
25
26
27
28
29
30
31
        strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sourcebdd()
        Conn = New OleDbConnection()
 
        Conn.ConnectionString = strCon
 
        Conn.Open()
 
        'Choisi quelle requête utilisée suivant ce que l'utilisateur a choisi dans les combobox.
        If CbxTables.Text = "TMatos" Then
 
            strSql = "DELETE FROM " & CbxTables.Text & " WHERE NomMatos='" & CbxChamp.Text & "'"
 
        ElseIf CbxTables.Text = "TFournisseurs" Then
 
            strSql = "DELETE FROM " & CbxTables.Text & " WHERE NomFournisseur'" & CbxChamp.Text & "'"
 
        ElseIf CbxTables.Text = "TPannes" Then
 
            strSql = "DELETE FROM " & CbxTables.Text & " WHERE DescriptionPanne='" & CbxChamp.Text & "'"
 
        End If
 
 
        'MsgBox(strSql)
 
        Comm = New OleDbCommand(strSql)
 
        Comm.Connection() = Conn
        Comm.ExecuteNonQuery()
 
        Conn.Close()
Si vous avez une solution ou un début de solution ça m'aiderai, merci beaucoup.