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 :

[PB] requete d'insertion avec group by


Sujet :

Langage SQL

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 23
    Points : 9
    Points
    9
    Par défaut [PB] requete d'insertion avec group by
    salut
    j'ai une base access dans le code d'un de mes formulaires je fait une requete donc le syntaxe est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO UTILISATEUR SELECT * FROM UTILISATEUR IN 'c:\BaseSource.mdb' GROUP BY UTILISATEUR.NUMUTILISATEUR;
    NumUTILISATEUR étant ma clé primaire.

    l'erreur retourné est "impossible d'éffectuer un regroupement sur les champs selectionnés avec '*'.

    sachant que les deux bases sont identique.

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Tu écris tous les champs à la place de *, c'est tout.

    Puis à quoi ca sert de faire un group by sur la clé primaire ?

    Et ta requête qu'est ce qu'elle veut dire ?

  3. #3
    Membre confirmé Avatar de juvamine
    Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2004
    Messages : 414
    Points : 502
    Points
    502
    Par défaut
    Un group by sur une clé primaire est en effet inutile...du fait qu'une clé primaire est par définition unique, y'aura pas plusieurs lignes qui tomberont...

    Autrement, essai de prendre l'habitude d'écrire le nom de tous les champs que tu veux récupérer, le select * est plus long à traiter, surtout si là tu vas chercher les données dans un autre fichier !
    Juvamine

  4. #4
    Futur Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 23
    Points : 9
    Points
    9
    Par défaut
    je vais expliquer plus en détail.

    la requete que j'ai donné est une requete d'insertion d'une base source à une base de reception. elle s'execute à partir de la base de reception et va prendre les données contenu dans la table UTILISATEUR de la base source et les copier dans la table UTILISATEUR de la base de reception.
    le problème qui c'est posé à moi est le problème de redondance des données
    copier. qui peuvent être deja dans la base de reception.

    je ne peu pas énumérer les champs car dans l'exemple j'ai mit utilisateur mais en fait c une variable de type tableau. et la requete se trouve dans une boucle qui in crementera l'indice et changera de table.

  5. #5
    Membre confirmé Avatar de juvamine
    Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mai 2004
    Messages : 414
    Points : 502
    Points
    502
    Par défaut
    INSERT INTO UTILISATEUR a SELECT * FROM UTILISATEUR b IN 'c:\BaseSource.mdb' where b.NUMUTILISATEUR not in (select nomutilisateur from utilisateur);

    et ca qu'est ce que ca donne ?
    Juvamine

Discussions similaires

  1. Requete deffectueuse Insert avec select
    Par Dargos dans le forum Langage SQL
    Réponses: 3
    Dernier message: 10/05/2007, 13h58
  2. requete d'insertion avec liste déroulantes avec deux colonnes
    Par maxeur dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 25/01/2007, 14h56
  3. [ODBC] Requete d'insertion avec php
    Par rolph dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/11/2006, 13h18
  4. Requete d'insertion avec n° auto
    Par zapatta dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 24/07/2006, 10h37
  5. Réponses: 31
    Dernier message: 28/04/2006, 11h09

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