2013-08-01 4 views
4

J'utilise Microsoft SQL Server Management Studio, je suis en train d'exécuter la requête suivante pour les valeurs d'entrée dans une table temporaire pour une utilisation ultérieure:Insertion de valeurs multiples dans une table temporaire, SQL Server

CREATE TABLE #temptable 
(colnumber varchar(15), dispcode varchar(10)) 

INSERT INTO #temptable (colnumber, dispcode) 
VALUES 
('col5', '811'), 
('col6', '817'), 
('col7', '823'), 
('col8', '825'); 

Lors de l'exécution Je reçois l'erreur suivante:

Msg 102, Level 15, State 1, Line 50
Incorrect syntax near ','.

, qui montre la ligne "('Col5', '811'),"

quelqu'un pourrait-il me aider à identifier le problème ici?

+0

son travail bien voir ici ... http: //www.sqlfiddle.com/# 3/773e2/1 ** VERSION –

+4

Quelle * * de SQL Server utilisez-vous? Cette possibilité de spécifier plusieurs ensembles de données à utiliser dans un 'INSERT' a été introduite avec SQL Server ** 2008 ** seulement - ce n'est pas disponible dans les versions antérieures. –

Répondre

12

Pour la version SQL Server 2008 < utilisez:

INSERT INTO #temptable (colnumber, dispcode) 
SELECT 'col5', '811' 
UNION ALL SELECT 'col6', '817' 
UNION ALL SELECT 'col7', '823' 
UNION ALL SELECT 'col8', '825' 
+0

La chose étrange est que j'utilise 2012, mais le faire de cette façon fonctionne pour moi alors merci! – user2643021

+0

Vous utilisez peut-être un mode de compatibilité et un ancien moteur. Vérifie ça. – OzrenTkalcecKrznaric

+2

Pourquoi n'acceptez-vous pas la réponse? http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –

Questions connexes