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 :

un INSERT et VALUE avec requête imbriquée = impossible ?????


Sujet :

Langage SQL

  1. #1
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut un INSERT et VALUE avec requête imbriquée = impossible ?????
    je ne sais pas si ça vient du SGBD (SQL server 2000) ou du langage SQL, mais est-ce qu'un truc comme ça est censé fonctionner ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO MyTable(ID,LIB) VALUES ( 
     
    (SELECT max(id2) FROM MyTable2),'MyLib');
    sinon comment contourner cette limite ?

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Cf l'excellent article de SQLpro :Insertion multiple à base de sous-requête SELECT, il faut que tu fasses :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT INTO MyTable(ID, LIB)
    SELECT MAX(id2), 'MyLib' FROM MyTable2;
    Remarque : bien qu'il ne soit pas spécifié dans l'article, il ne faut pas utiliser le mot clé VALUES pour les INSERT à base de sous-requêtes !

  3. #3
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 347
    Points : 136
    Points
    136
    Par défaut non
    non je ne peux pas car 'MyLib' n'est pas un élément de MyTable2, c'est une valeur brute

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Points : 1 199
    Points
    1 199
    Par défaut
    As tu essayé avant de dire que tu ne peux pas.
    Il est tout à fait possible en SQL de faire d'une part.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Select 'Coucou, le soleil brille', Champ1 from matable1
    Where ...
    D'autre part comme dit dans l'article de SQL PRO, il est également possible de faire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Insert into maTable1 (Champ1, Champ2) Select ChampA, ChampB from Matable2
    Donc je ne vois pas pourquoi on ne pourrait pas combiner les deux, comme proposé par Magnus

    A+
    Soazig

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Merci de ton soutien soazig en fait je pense que USA Mike ne comprend pas que quand on fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT MyTable.x, 'bla bla'
    FROM MyTable
    la requête retourne 2 colonnes pour chaque ligne de MyTable.

    Les 2 colonnes étant la valeur de l'attribut x et la chaîne 'bla bla' qui ne fait pas partie de la liste des attributs de MyTable.

Discussions similaires

  1. Requête Update avec requête imbriquée
    Par sybaris dans le forum Développement
    Réponses: 2
    Dernier message: 05/07/2008, 12h51
  2. Insert avec requête imbriquée
    Par kyra78 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/03/2008, 16h21
  3. [Smarty] boucles imbriquées avec requêtes SQL, impossible à comprendre
    Par dexxter dans le forum Bibliothèques et frameworks
    Réponses: 9
    Dernier message: 18/05/2007, 23h52
  4. Delete avec requête imbriquée et clé primaire
    Par boutss dans le forum Oracle
    Réponses: 4
    Dernier message: 12/03/2007, 15h32
  5. insertion avec requête imbriquées
    Par Manfried dans le forum Requêtes
    Réponses: 7
    Dernier message: 19/11/2005, 09h51

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