Verification avant insertion dans une table

cs_effio Messages postés 10 Date d'inscription mardi 28 novembre 2006 Statut Membre Dernière intervention 16 février 2007 - 28 nov. 2006 à 23:23
cs_effio Messages postés 10 Date d'inscription mardi 28 novembre 2006 Statut Membre Dernière intervention 16 février 2007 - 22 janv. 2007 à 22:59
salut
J'aimerais savoir comment on peut verifier le contenu d'une table (en access)
pour eviter les doublons avant que les données ne soient insérées dans la table
merci d'avance mavic

4 réponses

cs_effio Messages postés 10 Date d'inscription mardi 28 novembre 2006 Statut Membre Dernière intervention 16 février 2007 1
22 janv. 2007 à 22:59
Salut
J'ai pu resoudre le problème...
D'abord avec un composant Query, je lance une requete SELECT (requete SQL) ki recherche dans la table dans laquelle je veux faire l'insertion, la ligne correspondant a la condition inscrite dans la requete.
Ensuite je pose un If query.recordcount>0 //ce ki signifie ke si l'élement existe deja exécuter les instructions ki suivent le IF//
...instructions...//entre autre afficher un message//
else //au cas ou query.recordcount=0, l'enrégistrement n'existe pas encore, faire les instructions pour insérer l'élement dans la base//

merci tout de meme
PS: si quelqu'un est intéressé je peux rendre le code disponible prochainement...

mavic
1
cs_couf Messages postés 213 Date d'inscription dimanche 5 janvier 2003 Statut Membre Dernière intervention 6 janvier 2011 1
29 nov. 2006 à 10:00
Salut Ami,

 Tu veux écrire un code en delphi pour te le faire , c'est cela?
Sinon tu peux le faire à la mano
http://cerig.efpg.inpg.fr/tutoriel/bases-de-donnees/chap15.htm

couf
0
ELGASSIO Messages postés 3 Date d'inscription lundi 23 octobre 2006 Statut Membre Dernière intervention 17 novembre 2008
2 déc. 2006 à 18:05
salut pose la question  a ton prof il te le dira
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
3 déc. 2006 à 13:23
Voilà une méthode dont je me servais, lorsque j'utilisais le BDE...

  try
    ZoneDeSaisie.DataSource.dataset.post;


  except
    on E: EDBEngineError do
      with EDBEngineError(E) do
        if Errors[ErrorCount - 1].ErrorCode = DBIERR_KEYVIOL then
            // doublon !!!
        begin
          Application.MESSAGEBOX('Ce numéro d''enregistrement existe déjà, resaisissez', 'Ajout de fiche',
            MB_ICONEXCLAMATION);
          ZoneDeSaisie.SetFocus;
          exit;
        end
        else
        begin
          Showmessage(Errors[ErrorCount - 1].Message);
          exit;
        end;
  end;

cantador
0
Rejoignez-nous