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 :

Insertion valeure dans une table


Sujet :

Langage SQL

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut Insertion valeure dans une table
    Rebonjour,

    J'aimerais insérer une valeure dans une table mais seulement si cette valeure n'existe pas. Est-ce possible?

    Merci d'avance pour votre aide

  2. #2
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    Personne ne pourrait m'aider? SVP

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 15
    Points : 16
    Points
    16
    Par défaut
    Bah tu fais un algo dans lequel tu vérifie l'existence de ta valeur et si elle n'existe pas tu fais ton insertion. Enfin tu travailles sur quoi déjà ?

  4. #4
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Si, probablement tout le monde ici, mais ta question est trop vaste, tu dispose de plein de solutions :
    - une requete insert//select
    - une clause d'integrité ou une clef primaire définie sur ta table
    précise tes données et ton cas si tu as besoin de plus de précisions.

  5. #5
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    D'accord je l'avoue, ce n'était pas très claire. Alors j'ai une table reservations, et une table personne. Et j'aimerais faire un insert de mon champ personne_presente dans le champ nom_personne de la table personne. Mais il peut il y avoir une personne qui est déjà dans la table personne, c'est pour sela que je voudrais pouvoir controler directement depuis la requete sql avant d'insérer la valeure, si elle existe déjà.

    Donc est-ce possible? Car j'ai essayé avec un select disctinct avec un insert, ca ne marche pas.

    Merci d'avance pour votre précieuse aide

  6. #6
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Sisi, un select insert peut fonctionner, par ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    insert into personne (nom, prenom)
    select 'toto' as nom, 'roger' as prenom
    from personne
    where not exists ( select null from personne where nom='toto' and prenom='roger' )
    ton select ne ramenera rien si roger toto est deja dans la base et donc n'inserera rien dans ce cas, il le creera sinon...

    mais le mieux est probablement de définir un index unique sur nom prénom qui fera 'planter' un insert tout bete en 'duplicate key', par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    create index id_personne_nom_prenom unique on personne ( nom, prenom )
    (syntaxe a adapter a ton sgbdr). C'est non seulement plus propre mais ca permet de s'assurer qu'il n'y a pas de doublons dans ta table... Attention tou de meme, nom/prenom sont tout sauf un identificateur de personne, essaye sylvie-dupont sur les pages blanches par exemple

  7. #7
    Membre habitué
    Inscrit en
    Novembre 2003
    Messages
    533
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Novembre 2003
    Messages : 533
    Points : 180
    Points
    180
    Par défaut
    C'est parfait, merci infiniment pour ton aide. Ca marche comme sur des roulettes.

    A tout bientot

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 22/03/2015, 21h12
  2. Réponses: 8
    Dernier message: 01/10/2014, 17h34
  3. Insert valeur dans une table depuis Select
    Par bryce_74 dans le forum Développement
    Réponses: 2
    Dernier message: 09/10/2011, 21h55
  4. [PL/SQl] Insertion de valeurs dans une table
    Par ApprentiOracle dans le forum SQL
    Réponses: 4
    Dernier message: 29/11/2007, 19h05
  5. Insertion de valeur dans une table
    Par The Goion dans le forum VBA Access
    Réponses: 4
    Dernier message: 28/05/2007, 21h14

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