IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Message : "Key violation"


Sujet :

Langage SQL

  1. #1
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut Message : "Key violation"
    Salut ! J'ai un problème que je comprend pas dutout !
    Au fait j'ai créé une application de test, je voulais tester un peu le SQL ! Tout marche à merveille (selection...etc), sauf que je voulais ajouter un nouveau tuplet, ça me génére un joli message "Key violation"
    Voici les attributs de ma table (qui est simple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Nom            Type  
     
    ID            Short Integer 
    Nom           Alphanumérique 
    Prenom        Alphanumérique
    et ma requêtre est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    INSERT INTO Test.db 
    (ID, Nom, Prenom)  
    VALUES  ('1','Nom' ,'prenom')
    La truc bizzard :
    Le nouveau tuplet est bien inséré dans la table, mais un message qui s'affiche avec !! et que dans mon application il faut bien que je gère les erreurs, alors si cette erreur est générée sans qu'il y a vraiment d'erreurs, comment puis-je savoir quand y a t il d'erreurs et quand y a pas !

    Normalement cette erreur est générée par exemple quand il y a une insertion d'un nouveau tuple avec un ID qui est déja dans la table... Je comprend pas.

    J'utilise Paradox, et mon IDE est C++Builder.

    J'ai pas cherché dans le forum, je suis désolé j'ai une connexion vraimment horrible, j'ai galéré pour pouvoir écrir ce poste!

    Si quelqu'un veux bien m'aider !


    Merci d'avance.
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

  2. #2
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut
    Salut !

    un petit UP

    Personne ne sais de quoi ça vient cette erreurs inexplicable ?
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

  3. #3
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Points : 367
    Points
    367
    Par défaut
    Bonjour,

    Le ID est un entier et tu met '1' ce n'est pas 1 ?

    A+

  4. #4
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut
    Salut !

    Merci pour ta réponse, effectivement c'est ce que j'ai pensais au début, mais malgrais ça, le même problème, çàd que le nouveau tuple est bien inseré à la table, mais le message d'erreur qui s'affiche avec, et ça avec ou sans les ' pour l'attribut ID !

    A+
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    Es-tu certain de ne pas essayer de faire un même insert plusieur foi?

    En effet, si ton tuple est déjà dans la table avec l'id 1, il ne peut être inséré une deuxième foi. (unicité de la clé primaire oblige).

    Ton programme donnera donc une erreur mais ton tuple existera car il existait déjà avant l'exécution de ton programme.

  6. #6
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut
    Citation Envoyé par Togis
    Es-tu certain de ne pas essayer de faire un même insert plusieur foi?

    En effet, si ton tuple est déjà dans la table avec l'id 1, il ne peut être inséré une deuxième foi. (unicité de la clé primaire oblige).

    Ton programme donnera donc une erreur mais ton tuple existera car il existait déjà avant l'exécution de ton programme.
    Salut !

    Merci pour ta réponse !

    Ben c'est ça le problem, en effet, si je tante d'ajouter un nouveau tuplet avec un ID déja existant, il m'affiche ce message d'erreur, mais qui est logique dans ce cas !
    Mais si j'insert un nouveau tuple avec un ID non existant, ben j'aurai le même message ("Key violation") sauf que cette fois ci, le tuple est bien inséré dans la table malgrès tout

    A+
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

Discussions similaires

  1. Intercepter le message du pilote paradox (key violation)
    Par helmis dans le forum Bases de données
    Réponses: 2
    Dernier message: 27/03/2008, 15h02
  2. Message d'erreur 'violation of FOREIGN KEY constraint' de Interbase
    Par abdelghani_k dans le forum Bases de données
    Réponses: 3
    Dernier message: 03/06/2007, 09h11
  3. message d'erreur violation de clé
    Par StyleXP dans le forum Bases de données
    Réponses: 4
    Dernier message: 25/02/2006, 22h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo