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

Développement SQL Server Discussion :

Insertion multiple de lignes


Sujet :

Développement SQL Server

  1. #1
    Invité
    Invité(e)
    Par défaut Insertion multiple de lignes
    Bonjour,

    J'ai un léger problème concernant des INSERT. J'ai écrit un petit script pour remplir ma BD (histoire d'avoir des exemples pour tester), mais l'INSERT semble avoir un bug.

    En fait, quand je fais un INSERT simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    INSERT INTO [dbo].[Destination] (Nom, Adresse, Ville, Code_Postal, Pays)
    VALUES ('Liege Airport','rue Airport, 55','Liege','4000','Belgique');
    Ca ne pose pas de soucis.

    Cependant, quand je tente d'en faire un multiple (suivant l'exemple donné sur le site de Microsoft et même ailleurs), j'ai une erreur surprenante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO [dbo].[Destination] (Nom, Adresse, Ville, Code_Postal, Pays)
    VALUES	('Stark SPRL','rue Winterfell, 19','Nord','75000','Westeros'), 
    		('Liege Airport','rue Airport, 55','Liege','4000','Belgique');
    Msg 102, Level 15, State 1, Line 2
    Syntaxe incorrecte vers ','.
    J'avoue ne vraiment pas comprendre cette erreur, j'ai essayé de mettre l'ensemble des values entre parenthèses, ça n'a rien changé non plus.
    J'ai ce type d'erreur pour tous mes INSERT multiples.

    A noter aussi que pour chaque table, il y a une ID qui s'auto-incrémente. Mais je ne vois pas en quoi ça pourrait jouer dans la mesure où les INSERT "simples" fonctionnent sans problème.

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Bonjour,

    Quelle est votre version de SQL Server ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    SQL Server 2005

    Et j'utilise Microsoft SQL Server Management Studio Express (version 9) pour gérer la BD.

  4. #4
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Avez-vous bien regardé la page MSDN correspondant à votre version ?

    Personnellement, je ne vois pas d'exemple d'insertion multiples à l'aide d'une clause VALUES... J'en déduis que cette fonctionnalité n'est pas disponible avec la version 2005.

    Voici la page MSDN de votre version (normalement).
    Kropernic

  5. #5
    Invité
    Invité(e)
    Par défaut
    Ta question m'a fait trouvé la réponse finalement x)

    Y a, en effet, pas de possibilité d'insertion multiple avec VALUES sur SQL Server 2005.

    Voici le code corrigé à l'aide d'UNION ALL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    INSERT INTO [dbo].[Destination] (Nom, Adresse, Ville, Code_Postal, Pays)
    SELECT	'Stark SPRL','rue Winterfell, 19','Nord','75000','Westeros' UNION ALL
    SELECT	'Liege Airport','rue Airport, 55','Liege','4000','Belgique'
    GO
    Merci pour les réponses, ça m'a dirigé sur la bonne voie ^^

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

Discussions similaires

  1. [MySQL] Insertion checkbox multiples en ligne dans ma base.
    Par snorky94 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 05/09/2012, 20h31
  2. Insert ou Update lignes multiples
    Par DeWaRs dans le forum Langage SQL
    Réponses: 8
    Dernier message: 18/05/2012, 17h49
  3. Insertion multiple dans une table et limitation du nombre de lignes
    Par marcandre dans le forum Développement
    Réponses: 1
    Dernier message: 29/04/2011, 15h10
  4. INSERT multiple : rapide pour 10 lignes, très lent pour 11 !
    Par alex.hitman dans le forum Requêtes
    Réponses: 1
    Dernier message: 17/08/2008, 22h19

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