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

SQL Oracle Discussion :

Vérifier si les données existent, si inexistant INSERT


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut Vérifier si les données existent, si inexistant INSERT
    Bonjour
    Je voudrais faire vérifier si les valeurs suivant existe dans ma table : 'OTA',' ','OTAROT','','OTA ','0','','001','001','1,000','0','0','1,000','0,00','0,00','','0','',''

    Si les valeurs n'existe pas ma requete est censé faire un INSERT dans de ces valeurs.
    Mais m'a requete ne marche pas pouvez vous m'aidez?

    Voici ma requete


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    MERGE INTO f_ftpap USING values ('OTA','   ','OTAROT','','OTA   ','0','','001','001','1,000','0','0','1,000','0,00','0,00','','0','','');
    WHEN NOT MATCHED THEN
    insert into f_ftpap values ('OTA','   ','OTAROT','','OTA   ','0','','001','001','1,000','0','0','1,000','0,00','0,00','','0','','');

    Merci d'avance

  2. #2
    Membre Expert Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Par défaut
    Salut !

    MERGE ne s'utilise pas ainsi... et par ailleurs tu n'en as pas besoin ici à mon avis.
    (En plus il y a le point virgule en trop à la fin de la première ligne).
    Si tu veux en savoir plus sur MERGE, je t'invite à faire une petite recherche sur le net.

    Ici, tu peux faire par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    INSERT INTO f_ftpap(tacol1, tacol2, ...)
    SELECT 'OTA','   ','OTAROT','','OTA ','0','','001','001','1,000','0','0','1,000','0,00','0,00','','0','',''
    FROM DUAL
    WHERE NOT EXISTS
      (SELECT NULL
        FROM f_ftpap
        WHERE col1 = 'OTA'
            AND col2 = '   '
            AND ... --toutes les égalités avec tes valeurs)
    Après, si tu as une clef primaire sur la table, il te suffit de juste tester cette clef.

  3. #3
    Membre averti
    Inscrit en
    Octobre 2011
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 38
    Par défaut
    Merci pour ton aide ça marche, mais la fonction INSERT m'est utile car ma clé primaire est autoincrémenté. Et je ne peux pas me permettre de lui en donner une moi même.
    C'est pour ça que j'aurais besoin d'avoir un insert si les valeurs n'existent pas.

Discussions similaires

  1. [MySQL] Vérifier si une donnée existe
    Par Scots dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 03/04/2014, 16h41
  2. Réponses: 16
    Dernier message: 25/06/2013, 10h45
  3. Vérifier si la donnée existe
    Par hajarita dans le forum SQL Procédural
    Réponses: 0
    Dernier message: 29/11/2012, 16h31
  4. INNER JOIN sur un table si les données existent
    Par Anduriel dans le forum Langage SQL
    Réponses: 6
    Dernier message: 05/07/2012, 14h50
  5. [PHP 5.0] [PHP / Flash] Vérifier que les données viennent de Flash
    Par mims1664 dans le forum Langage
    Réponses: 3
    Dernier message: 28/07/2009, 22h08

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