cs_zserge
Messages postés11Date d'inscriptionsamedi 20 décembre 2003StatutMembreDernière intervention 6 janvier 2007 22 oct. 2006 à 22:15
Effectivement si tu supprime des enregistrements il te faut reindexer la base avec la commande DBCC REINDEX que tu doit pouvoir piloter par programme. Sinon il te faut tester l'existence de la valeur générée par le Random dans une boucle while.
cs_zserge
Messages postés11Date d'inscriptionsamedi 20 décembre 2003StatutMembreDernière intervention 6 janvier 2007 21 oct. 2006 à 08:55
bonjour,
il te faut une table avec un id en clef primaire
1° étape récupérer l'id max
int max = select max(id) from matable;
2° étape créer un random
Random rand = new Random();
int valeur = rand.Next(0, max);
3° étape sélectionner l'enregistrement string citation select citation from matable where id valeur;
Attention c'est pas du code source que j'ai écrit, c'est juste pour te montrer la logique.
garnier54
Messages postés158Date d'inscriptionmardi 17 janvier 2006StatutMembreDernière intervention 9 décembre 2018 22 oct. 2006 à 09:57
merci de ta reponse, j avais bien pense a une solution comme celle la mais elle me fonctionne pas. en effet l'id du fichier n'est pas forcement lineaire, en car notament de suppression d'enregistrement il y a des troux dans l'ID. et il y a un risque pour que la selection se fasse sur un id qui n'existe pas.