2016-10-25 4 views
1

ich die folgende Tabelle Variable:Einfügen einer Zeile in Identitätsspalte der Tabelle Variable

declare @TestTable2 as table (A int identity) 

Ich versuche, einen Wert (zum Beispiel ein 1) einzufügen ohne die Codezeile oben zu verändern.

Ich habe versucht, die folgenden

declare @TestTable2 as table (A int identity) 



SET IDENTITY_INSERT @TestTable2 ON 
INSERT @TestTable2 (A) 
VALUES (1) 

Aber ich erhalte eine Fehlermeldung (incorret Syntax nahe '@ TableTEST2')

Wie kann ich füge einen Wert in der Spalte A zu tun?

+0

I verwendet: 'declare @ TestTable2 als Tabelle (A int Identität) SET IDENTITY_INSERT @ TestTable2 ON INSERT @ TestTable2 (A) VALUES (1)' – Jazz

+0

Mögliche Duplikat von [syntax error table variable] (http://stackoverflow.com/questions/9158335/syntax-error-table-variable) – Arion

Antwort

0

Überprüfen Sie [MSDNlink] [1] unten. Sie gibt die Einschränkung an.

BEARBEITEN. Nachdem klar wurde, dass Sie einen bestimmten Wert einfügen wollen nicht (das ist, was Identity_Insert für ist) alles, was Sie wollen, ist ein neues automatisch generierten Wert für Columne A einzufügen, dann, was Sie tun müssen, ist

Insert @TestTable2 DEFAULT VALUES 

https://connect.microsoft.com/SQLServer/feedback/details/757012/set-identity-insert-on-table-variables

+0

Okey. Aber wie kann ich stattdessen eine Zeile einfügen? – Jazz

+2

Meinst du Eine Zeile mit einem bestimmten Wert einfügen? oder einfach eine neue Zeile mit dem nächsten Identity-Wert einfügen? Wenn es das letztere ist, müssen Sie nur das Schlüsselwort DEFAULT verwenden. 'Einfügen @ TestTable2 DEFAULT VALUES' –

+0

Link nur Antwort huh? –

1

Nein ist dies nicht möglich, SET IDENTITY_INSERT nicht auf Tabellenvariablen anwenden wird

Wenn SET IDENTITY_INSERT Versuch verwenden möchten temporäre Tabelle zu erstellen und verwenden SET IDENTITY_INSERT auf sie

CREATE TABLE #TestTable2(A int identity) 
SET IDENTITY_INSERT #TestTable2 ON 

INSERT INTO #TestTable2 (A) VALUES (1) 

Weitere Informationen HERE

+0

Sorgt dafür, die Wähler zu kommentieren, warum die Stimmen stimmen –

Verwandte Themen