je souhaite vider une table dans une base Access je fais:
SQL = "DELETE * FROM temp;"
Adodc2.RecordSource = SQL
Adodc2.Refresh
et j'ai une erreur sans numéro "Cette opération n'est pas autorisée si
l'objet est fermé".
Tout fonctionne bien mais j'ai ce message que je ne pas voir apparaitre.
En effets avec l'objet Recordset la commande Execute n'existe pas
(mea culpa)
il faut l'utiliser avec l'objet Connection
après avoir déclaré la connection
tu peux exécuter une commande SQL
Bye
INFOEDUC
J'ai une solution qui peut paraître "primaire" et peu sophistiquée, mais je te garantis qu'elle fonctionne :
Soit Rst, variable pointant vers un objet recordset (en l'occurence la table que tu veux vider). Tu peux utiliser la procédure suivante :
Sub Efface_Fichier() RSt.MoveFirst Do Until RSt.EOF RSt.Delete adAffectCurrent RSt.MoveNext Loop End Sub
Il existe un pramètre adAffectAll, qui doit pouvoir t'éviter la boucle Do-Loop en supprimant la totalité des enregs d'un coup, mais je ne l'ai pas essayée.
-----Message d'origine----- je souhaite vider une table dans une base Access je fais:
SQL = "DELETE * FROM temp;" Adodc2.RecordSource = SQL Adodc2.Refresh
et j'ai une erreur sans numéro "Cette opération n'est
pas autorisée si
l'objet est fermé". Tout fonctionne bien mais j'ai ce message que je ne pas
voir apparaitre.
VB6 SP5 ADO Microsoft Jet 4.0
Merci.
.
J'ai une solution qui peut paraître "primaire" et peu
sophistiquée, mais je te garantis qu'elle fonctionne :
Soit Rst, variable pointant vers un objet recordset (en
l'occurence la table que tu veux vider).
Tu peux utiliser la procédure suivante :
Sub Efface_Fichier()
RSt.MoveFirst
Do Until RSt.EOF
RSt.Delete adAffectCurrent
RSt.MoveNext
Loop
End Sub
Il existe un pramètre adAffectAll, qui doit pouvoir
t'éviter la boucle Do-Loop en supprimant la totalité des
enregs d'un coup, mais je ne l'ai pas essayée.
-----Message d'origine-----
je souhaite vider une table dans une base Access je fais:
SQL = "DELETE * FROM temp;"
Adodc2.RecordSource = SQL
Adodc2.Refresh
et j'ai une erreur sans numéro "Cette opération n'est
pas autorisée si
l'objet est fermé".
Tout fonctionne bien mais j'ai ce message que je ne pas
J'ai une solution qui peut paraître "primaire" et peu sophistiquée, mais je te garantis qu'elle fonctionne :
Soit Rst, variable pointant vers un objet recordset (en l'occurence la table que tu veux vider). Tu peux utiliser la procédure suivante :
Sub Efface_Fichier() RSt.MoveFirst Do Until RSt.EOF RSt.Delete adAffectCurrent RSt.MoveNext Loop End Sub
Il existe un pramètre adAffectAll, qui doit pouvoir t'éviter la boucle Do-Loop en supprimant la totalité des enregs d'un coup, mais je ne l'ai pas essayée.
-----Message d'origine----- je souhaite vider une table dans une base Access je fais:
SQL = "DELETE * FROM temp;" Adodc2.RecordSource = SQL Adodc2.Refresh
et j'ai une erreur sans numéro "Cette opération n'est
pas autorisée si
l'objet est fermé". Tout fonctionne bien mais j'ai ce message que je ne pas