Effacer les 100 premiers enregistrement dans une base de donnée

Résolu
chacahua Messages postés 4 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 23 août 2005 - 23 août 2005 à 10:54
chacahua Messages postés 4 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 23 août 2005 - 23 août 2005 à 14:33
Bonjour tout le monde,

Ma question est simple j'imagine pour vous ...
J'ai crée un journal sous vb qui me permet à l'aide d'un bouton de purger ma base de donnée.
Seulement je ne veux pas tout effacer seulement les 100 ou les 200 premiers enregistrements.
J'ai essayé d'utiliser le TOP comme dans un select mais ce n'est pas accepté
ex : "delete top 100 * from Journal " --> Faux
" select top 100 * from journal " --> Bon

Si quelqu'un connaît la réponse je l'attends avec impatience.

Merci d'avance ,

Yom

3 réponses

cs_sentenza Messages postés 5 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 18 décembre 2007
23 août 2005 à 11:37
bonjour,
passe par une table temporaire ou tu stockes les 100 premiers puis supprime les enregistrements de table qui existe dans la table temporaire.
3
scortex84 Messages postés 379 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 20 avril 2011 1
23 août 2005 à 11:45
Hello,

Sinon, si chaque ligne est identifié par un id_unique, tu peux les utiliser pour supprimer tes enregistrements.
Tu selectionnes les 100 premiers enregistrements en utilisants top, tu recuperes l'id de la premiere et de la dernière ligne et tu fais une requete du type :
delete * from Journal where id_unique between 190 and 290" par exemple ?

Ou alors, plus lourd, mais simple : une boucle !

Bon courage,

Seb.
3
chacahua Messages postés 4 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 23 août 2005
23 août 2005 à 14:33
Merci bien, je vais tenter de passer par la methode de l'id.

Par contre j'aimerais faire un "select count * from journal" en recuperant le comptage dans une variable, j'avoue ne pas savoir comment m'y prendre puisqu'on a affaire à un objet.
j'ai essayé :

dim compte
SQL= "select count (*) from journal
Set rsjourN = cn.execute(SQL)
compte = rsjourN


l'objet compte possede bien le nombre d'enregistrement car avec l'espion on peut le voir dans compte --> Item 1 --> Value mais je n'arrive pas le ressortir dans une variable.

Si vous savez comment faire, je suis tout ouïe ...

D'avance merci !

Yom
0
Rejoignez-nous