Einfügen mehrerer Zeilen in Temp-Tabelle mit SQL Server 2012 [Duplizieren]

8

Diese StackOverflow-Fragen hier , hier , und hier sagen alle dasselbe, aber ich kann es nicht in SSMS oder SQLFiddle ausführen

%Vor%

Wenn ich dies ausführen, ist SSMS, die Einfügung schlägt mit der folgenden Nachricht in der ersten Zeile nach VALUES

fehl
  

Msg 102, Level 15, State 1, Line 10
  Falsche Syntax in der Nähe von ','.

Dieses Fiddle wird ohne das # -Zeichen und den Schema wird erfolgreich ausgeführt, wenn der Tabellenname #Names lautet, aber ich erhalte die folgende Meldung, wenn ich versuche, * aus der Tabelle

auszuwählen
  

Ungültiger Objektname '#NAMES': SELECT * FROM #NAMES

Unterstützt SQL Server 2012 mehrere Einfügungen?

UPDATE Tut mir leid, du wirst es tun. SQL-Neuling merkt nicht, dass SSMS 2012 auf den Server beschränkt ist, auf dem ich bin

%Vor%     
KyleMit 01.08.2013, 20:36
quelle

2 Antworten

6

Ja, SQL Server 2012 unterstützt mehrere Einfügungen - diese Funktion wurde in SQL Server 2008 eingeführt.

Das lässt mich fragen, ob Sie Management Studio 2012 haben, aber Sie sind wirklich mit einer SQL Server 2005 Instanz verbunden ...

Welche Version der SQL Server engine erhalten Sie von SELECT @@VERSION ??

    
marc_s 01.08.2013, 20:46
quelle
6

Stellen Sie bei Verwendung von SQLFiddle sicher, dass das Trennzeichen auf GO gesetzt ist. Außerdem wird das Schemabuildskript in einer anderen Verbindung als das Ausführungsskript ausgeführt, sodass eine temporäre Tabelle, die in der einen erstellt wird, in der anderen nicht sichtbar ist. Diese Geige zeigt, dass Ihr Code gültig ist und in SQL 2012 funktioniert:

SQL Fiddle

MS SQL Server 2012-Schemastruktur :

Abfrage 1 :

%Vor%

Ergebnisse :

%Vor%

Hier ein SSMS 2012 Screenshot:

    
Sebastian Meine 01.08.2013 20:42
quelle

Tags und Links