Prob de supprimer des info dans une base

Résolu
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006 - 18 juil. 2005 à 20:02
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006 - 19 juil. 2005 à 11:56
salut merci encore

jai un petit probleme



au niveau de se code



' connection a la base donne

Data4.DatabaseName = "C:\carte_fidelite.mdb"

Data4.RecordSource = "DELETE
* From communication WHERE communication.code_client like ' &
cdclient & '"



il veut supprimer les info de ma base de donnée access

je comprend pas

16 réponses

boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
19 juil. 2005 à 11:30
jai copier exactement ton code mais il ne marche pas je comprend pas c'est bizarre


c'est bien sa


Private Sub command_click()


Dim Data1 As Database


'Connexion à la base de données
Set Data1 = DBEngine.OpenDatabase("C:\carte_fidelite.mdb")


'Suppression de l'enregistrement
Data1.Execute "DELETE * From communication "


Data1.Close
Set Data1 = Nothing


End Sub
3
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
18 juil. 2005 à 20:04
il veut pas supprimer les info de ma base de donnée access



excusez moi
0
cs_Stephane Messages postés 550 Date d'inscription vendredi 5 janvier 2001 Statut Membre Dernière intervention 23 septembre 2006
18 juil. 2005 à 20:55
Slu



s'il n'y a pas d'erreur c'est donc que la requete est bonne, hors, si
elle est bonne et que rien n'est supprimé, c'est que la clause WHERE
est trop restrictive

(supposant la conexion a la BD bien établie)


A+



<hr size="2" width="100%">Utilisateurs du forum : Merci de lire http://www.vbfrance.com/forum.v2.aspx?ID=445871

<hr size="2" width="100%">
0
PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
18 juil. 2005 à 22:08
DELETE est une instruction unique.
tu veux effacer une occurence.
ton occurence doit être parfaitement identifiée. donc un "=", pas un "like".
maintenant, rien ne dit que le problène ne vienne que de là. essai d'ajouter un champs pour voir déjà si tes appels base sont corrects. tu peux ensuite voir au niveau de ta syntaxe actuelle. personnellement, je créé une variable
dim sql as string
et cette variable, pour toi, n'aurait pas eu la même syntaxe au niveau des côtes :
sql = "DELETE * FROM communication WHERE communication.code_client like '"
& cdclient & "'"

PCPT
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Modérateur Dernière intervention 15 juillet 2011 37
18 juil. 2005 à 22:16
Salut



"DELETE * From communication WHERE communication.code_client like ' & cdclient & '"



Dans la source on ne mets pas que des ordres SELECT ???

De plus le DELETE * FROM n'existe pas en SQL

C'est DELETE FROM

A moins qu'access accepte ?



Esperant avoir poussé plusloin le smilblick?
0
PtitGrumo Messages postés 205 Date d'inscription samedi 22 janvier 2005 Statut Membre Dernière intervention 28 novembre 2005 2
18 juil. 2005 à 22:49
Oui access accepte le *

Deplus j'appuye
0
Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 9
18 juil. 2005 à 23:37
salut,











' connection a la base donne

Data4.DatabaseName = "C:\carte_fidelite.mdb"

Data4.RecordSource "DELETE * From communication WHERE communication.code_client" & cdclient



La clause like n'est pas adaptée dans ce cas...



=> SELECT * FROM Adresses where nom LIKE 'DU%'


- Le caractère % remplace un ou plusieurs caractères


- Le mot réservé LIKE (en Français COMME) remplace l'égalité quand la comparaison
n'est pas fixe (en effet on ne connait pas au départ tous les noms commençant par DU
alors que dans le cas précédent dans le cas précédent c'était DUPONT)



Or ici c'est pas un "comme" que tu veux mais bien un "égal"



Nb: je suis d'accord avec PtitGrumo, * est accepté par Access



++



Zlub
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
19 juil. 2005 à 10:50
salut a tous merci pour tous les reponses mai sa ne marche toujours pas
donc jai essayer de faire une feuille a part avec un controle data et un boutton de commande voici ce que jai mis dedans

Private Sub Command1_Click()



Data1.DatabaseName = "C:\carte_fidelite.mdb"Data1.RecordSource "DELETE * From communication WHERE communication.code_client 2"




End Sub

il fait rien
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Modérateur Dernière intervention 15 juillet 2011 37
19 juil. 2005 à 10:54
salut



dans la datasource on peut mettre des delete ?



pourquoi

tu ne passe pas par un recordeset pour ta suppression?
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
19 juil. 2005 à 10:55
mais je fais comment explique moi stp
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Modérateur Dernière intervention 15 juillet 2011 37
19 juil. 2005 à 11:07
PUBLIC connADO As New adodb.Connection

PUBLIC rsADO As New adodb.Recordset

PUBLIC cmdADO As New adodb.Command

PUBLIC strsql As String



Public Sub Main()

connADO.ConnectionString =
"Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data
Source=" & App.path & "\bdd.mdb"

frmSplash.Show



end sub



public sub .......................

connADO.Open

cmdADO.ActiveConnection = connADO



strsql = "delete from ......................."



cmdADO.CommandText = strsql

cmdADO.Execute

connADO.Close



end sub



Moi je met les 4 dim en public dans un module

et la chaine de connection dans l'initiation le sub main.



Comme ca j'ai qu'un endroit a changer



Je n'utilises jamais les controle adodc
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
19 juil. 2005 à 11:15
merci

serieu je comprend a ton code un de detaille pour un débutant

Private Sub command_click()


Data1.DatabaseName = "C:\carte_fidelite.mdb"
Data1.RecordSource = "delete* From communication "

DBGrid1.Columns(1).Width = 4000



End Sub
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
19 juil. 2005 à 11:16
je comprend pas excuse moi
0
Ricks27 Messages postés 79 Date d'inscription mardi 4 juin 2002 Statut Membre Dernière intervention 29 juillet 2005
19 juil. 2005 à 11:24
Bonjour,



Au lieu d'utiliser un control "Data", essaies cette syntaxe :



Dim Data1 as Database



Connexion à la base de données

Set Data1 = DBEngine.OpenDatabase("C:\carte_fidelite.mdb")



Suppression de l'enregistrement

Data1.Execute "DELETE * From communication WHERE communication.code_client = 2"


Data1.Close

Set Data1 = Nothing


Ricks27
0
Ricks27 Messages postés 79 Date d'inscription mardi 4 juin 2002 Statut Membre Dernière intervention 29 juillet 2005
19 juil. 2005 à 11:55
Oui ca semble correcte.



As tu un message d'erreur?

Que se passe t'il exactement?

Qu'entend tu par "Ca ne marche pas"?

Ricks27
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
19 juil. 2005 à 11:56
excuse moi sa marche
merci a tous et bon developpement
0
Rejoignez-nous