FeelCode
Messages postés278Date d'inscriptionvendredi 16 avril 2004StatutMembreDernière intervention27 avril 2006
-
2 juil. 2004 à 00:56
FeelCode
Messages postés278Date d'inscriptionvendredi 16 avril 2004StatutMembreDernière intervention27 avril 2006
-
3 juil. 2004 à 16:48
hello
Comment est ce que l'on suprime un enregistrement avec une requette ??
j'ai essayer ce code
la requete est stoquée dans un tableau TabRequete(7) "DELETE From T_Proc WHERE T_Proc.Auto '';"
ensuite j'appelle la fonction comme suis
debug.print Delauto("PROC1")
Public Function DelAuto(DelAutoProc As String) As Boolean
Dim Dt As Database
Dim Rs As Variant
Dim G As String
Dim D As String
Dim Result
Result = "" 'c est censer renvoiyer une valeur ?
Set Dt = OpenDatabase(chemindelabase)
D = Right(TabRequete(7), 2)
G = Left(TabRequete(7), 40)
Dt.Execute (Replace(G + DelAutoProc + D, DelAutoProc, Result))
Dt.Close
'si sa a bien suprimer on renvoiye tru sinon false mai la vb passe dessu comme si de rien était. pas de message .... ???
End Function
bon alors la table s'appelle T_proc et le champ en question s'apelle Auto qui contrien du memo (string)
dans cette table la donnée a suprimer est : PROC1
merci pour le coup de pouce
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202172 2 juil. 2004 à 06:22
étrange ton code....
tout ce que tu semble executer, c'est :
DELETE From T_Proc WHERE T_Proc.Auto = '''c est censer renvoiyer une valeur ?;"
alors qu'il semblerait que tu veuille :
TabRequete(7) "DELETE From T_Proc WHERE T_Proc.Auto '"
debug.print Delauto("PROC1")
Public Function DelAuto(DelAutoProc As String) As Integer
Dim Dt As Database
Dim Rs As RecordSet
Set Dt = OpenDatabase(chemindelabase)Set RS Dt.OpenRecordset ( "SELECT COUNT(0) From T_Proc WHERE T_Proc.Auto '" & DelAutoProc & "';"
If RS.Fields(0).Value = 0 Then
'# La Valeur a supprimer n'existe pas dans la table : la fonction renvoies -1
DelAuto = -1
Dt.Close
Exit Function
End If
Dt.Execute TabRequete(7) & DelAutoProc & "';"
Set RS Dt.OpenRecordset ( "SELECT COUNT(0) From T_Proc WHERE T_Proc.Auto '" & DelAutoProc & "';"
If RS.Fields(0).Value = 0 Then
'# La Valeur a bien été supprimée... la fonction renvoies 1
DelAuto = 1
Dt.Close
Exit Function
End If
'# Le champ existe toujours.... la fonction renvoies 0
DelAuto = 0
Dt.Close
End Function
Comme tu peux le voir, c'est a toi de vérifier si la donnée a bien été supprimée.....
FeelCode
Messages postés278Date d'inscriptionvendredi 16 avril 2004StatutMembreDernière intervention27 avril 20061 3 juil. 2004 à 16:48
euh
pour ce qui est de tester l'existance de la valeur
j'ai fait une autre fonction.
If ComparAuto(DelAutoProc) = False Then Exit Function ' si il n'y est pas on sort
après j'essaye de dél mai bon ?
en gros :
ci dessou - ceci ser a placer l'éllement a trouver ET a le suprimmer mai bon ??
D = Right(TabRequete(7), 2)
G = Left(TabRequete(7), 40)
Dt.Execute (Replace(G + DelAutoProc + D, DelAutoProc,
Renfield tu utilise 2 reuqette diferente je supose 1 pour del et une pour savoir s'il est present :)
Merci pour l'aide aportée :))