SQL Server-Problem erzeugen der temporären Tabelle in TSQL
Hallo, wenn ich führen Sie die folgende TSQL, bekomme ich die Fehlermeldung unten. Aber es ist nichts falsch mit der SQL-syntax ist dort?
create table #tb ([t1] tinyint, [t2] varchar(50))
insert into #tb values
(1, 'a'),
(2, 'b')
Msg 102, Level 15, State 1, Line 3
Incorrect syntax near ','.
Es gibt nichts anderes in der SQL-Abfrage-Fenster. SQL Server 2005 ausgeführt.
InformationsquelleAutor Grant | 2011-05-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als jmoreno erwähnt, die
VALUES (), ()
syntax ist SQL Server 2008+ unterstützt, aber Sie hat, diese als SQL-Server 2005.Verwenden:
Es ist auch möglich, dies in einem einzigen Abfrage, die mit der
AUSWÄHLEN ...
- Klausel, aber die temp-Tabelle nicht bereits vorhanden ist:InformationsquelleAutor OMG Ponies
Versuchen Sie dies:
Müssen Sie die Spalten angeben, die Sie einfügen in.
//EDIT
Sorry, SQL 2005-syntax weiter unten. Es ist nicht annähernd so elegant.
InformationsquelleAutor James Hill
Du sagst, du bist mit SQL 2005, aber die WERTE (), () - syntax nicht implementiert war, bis 2008.
Mehrere insert-Anweisungen, oder eine select und UNION ALL.
InformationsquelleAutor jmoreno
Sieht aus wie Sie versuchen, einfügen von zwei Zeilen, so müssen Sie die erste Zeile und dann die zweite anstatt zu versuchen, squeeze-alles in einem:
InformationsquelleAutor TheEmirOfGroofunkistan
WÄHLEN Sie t aus.Feld1, t.Feld2 IN #myTempTable
VON myDB.myOwner.myTable t
WO ...
AUFTRAG VON t ist.Feld1, t.Feld2;
-- ##myTempTable wie der name wenn Sie möchten, dass Ihre Tabelle GLOBAL.
InformationsquelleAutor user2418636