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 :

Insert into table


Sujet :

SQL Oracle

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 318
    Par défaut Insert into table
    Bonjour,

    J'ai 2 tables:

    Table1 : qui contient les champs A,B,C
    Table2 : qui contient les champs A,B,C,D

    Je veux insérer toutes les valeurs des champs A,B,C de la table1 dans les champs A,B,C de la table2 et le champ D est calculé à partir d'une autre table

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Insert into Table2 (A,B,C,D) values (select A,B,C from table1, select D from AUTRETABLE)
    il m’écrit une erreur :
    Syntaxe error, expected something like ')' between '(' and the select keyword
    quelqu'un peut m'aider svp

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 133
    Par défaut
    1. La syntaxe de la commande INSERT...SELECT est la suivante :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      INSERT INTO cible (col1, ...)
      SELECT col1, ...
      FROM source
    2. La requête SELECT A,B,C FROM table1, SELECT D FROM AUTRETABLE est invalide.
      Il faut que tu utilises une jointure entre tes deux tables pour mettre en concordance les lignes.
      Ce tutoriel devrait pouvoir t'aider.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre expérimenté Avatar de JerryMouse
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 215
    Par défaut
    Effectivement, non seulement la requête n'est pas correcte mais elle n'est pas justifiée.
    Tu insères dans une table à 3 colonnes une requête qui en ramène 4. PAS POSSIBLE.

  4. #4
    Membre extrêmement actif
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Billets dans le blog
    6
    Par défaut
    S'il y a une relation entre TABLE2 et AUTRETABLE tu dois mettre une jointure en calculant le champ D.

    Sinon, si la jointure ne fait pas l'affaire, tu peux mettre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    insert into table1(A,B,C,D)
    select A,B,C ,(SELECT D FROM AUTRETABLE) from TABLE2
    si la requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT D FROM AUTRETABLE
    ramène une et une seule valeur.

    Peux tu poster un jeu de données pour concretiser ton besoin.???

Discussions similaires

  1. Problème Insert into table intermédiaire
    Par richard_sraing dans le forum Requêtes
    Réponses: 1
    Dernier message: 24/01/2009, 22h58
  2. Réponses: 9
    Dernier message: 07/02/2008, 13h44
  3. Insert into "table" VALUES
    Par tehaiti dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 06/07/2007, 17h29
  4. Réponses: 12
    Dernier message: 25/11/2005, 12h29
  5. insert into table values/ insert into table select
    Par aaronw dans le forum Requêtes
    Réponses: 4
    Dernier message: 31/05/2005, 15h14

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