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 :

insérer pleins d'éléments dans une table


Sujet :

Langage SQL

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Points : 129
    Points
    129
    Par défaut insérer pleins d'éléments dans une table
    bonjour,

    j'ai plusieurs insert de ce type à faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    INSERT INTO PERIODICITY (PER_ID, PER_NAME)
    VALUES (1, 'QUOTIDIEN')
     
    INSERT INTO PERIODICITY (PER_ID, PER_NAME)
    VALUES (2, 'HEBDOMADAIRE')
    y'a t'il un moyen plus simple pour insérer pleins de lignes, où on n'utilise qu'une seule fois le

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO PERIODICITY (PER_ID, PER_NAME)
    VALUES
    en mettant autant de values qu'on veut à la suite...?

    merci d'avance!

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    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 109
    Points : 28 430
    Points
    28 430
    Par défaut
    Non, ce n'est pas prévu dans la norme SQL. Mais certains SGBD proposent des extensions à cette syntaxe.

    En précisant le SGBD que vous utilisez et sa version, les réponses proposées seront adaptées aux spécificités et limitations de celui-ci.
    Règles du forum Langage SQL à lire par tous

  3. #3
    Inscrit

    Profil pro
    Inscrit en
    Février 2004
    Messages
    862
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2004
    Messages : 862
    Points : 1 229
    Points
    1 229
    Par défaut
    Sur certains SGBD (dont SQL Server) tu peux faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    INSERT INTO PERIODICITY (PER_ID, PER_NAME)
    SELECT 1, 'QUOTIDIEN'
    UNION
    SELECT 2, 'HEBDOMADAIRE'

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Points : 129
    Points
    129
    Par défaut
    effectivement je travaille sous SQL server (2005 bientôt)

    c'est la réponse que je voulais, merci!

    j'ai enlevé les champs puisque j'ai vu que je pouvais donc ça donne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    INSERT INTO PERIODICITY
    SELECT 1, 'QUOTIDIEN'
    UNION
    SELECT 2, 'HEBDOMADAIRE'

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 901
    Points : 53 143
    Points
    53 143
    Billets dans le blog
    6
    Par défaut
    al1_24 : Non, ce n'est pas prévu dans la norme SQL
    Si si, mais rarement implémenté. On peut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    INSERT INTO MaTable VALUES ( (val1, val2, ... valn), 
                                 (val1, val2, ... valn), 
                                 (val1, val2, ... valn), 
                                 ...
                                 (val1, val2, ... valn) );
    Cela s'appelle le ROW VALUE CONSTRUCTOR !

    Sybase accepte cette syntaxe...

    A +

  6. #6
    Inscrit

    Profil pro
    Inscrit en
    Février 2004
    Messages
    862
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2004
    Messages : 862
    Points : 1 229
    Points
    1 229
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Cela s'appelle le ROW VALUE CONSTRUCTOR !

    Sybase accepte cette syntaxe...
    et SQL Server 2008 aussi...

  7. #7
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    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 109
    Points : 28 430
    Points
    28 430
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Si si, mais rarement implémenté. On peut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    INSERT INTO MaTable VALUES ( (val1, val2, ... valn), 
                                 (val1, val2, ... valn), 
                                 (val1, val2, ... valn), 
                                 ...
                                 (val1, val2, ... valn) );
    Cela s'appelle le ROW VALUE CONSTRUCTOR !

    Sybase accepte cette syntaxe...
    Et tellement mal décrit dans la norme que je ne l'avais pas vu
    Merci de ces précisions.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/10/2014, 10h15
  2. Réponses: 1
    Dernier message: 22/01/2008, 16h58
  3. Réponses: 2
    Dernier message: 08/03/2007, 10h50
  4. Insérer des données Excel dans une table ACCESS
    Par anikeh dans le forum Access
    Réponses: 4
    Dernier message: 21/12/2005, 22h42
  5. insérer un nombre décimale dans une table
    Par mouloudéen dans le forum Access
    Réponses: 4
    Dernier message: 02/10/2005, 21h29

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