Conflit à la suppression d'un champ dans la BDD
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:
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.