Se ho una dichiarazione inserto come ad esempio:Come utilizzare una clausola OUTPUT dell'istruzione INSERT per ottenere il valore dell'identità?
INSERT INTO MyTable
(
Name,
Address,
PhoneNo
)
VALUES
(
'Yatrix',
'1234 Address Stuff',
'1112223333'
)
Come faccio a impostare @var INT
al valore di identità della nuova riga (chiamato Id
) utilizzando la clausola di uscita? Ho visto esempi di inserimento di INSERTED.Name in variabili di tabella, ad esempio, ma non riesco a inserirlo in una variabile non di tabella.
Ho provato OUPUT INSERTED.Id AS @var
, SET @var = INSERTED.Id
, ma nessuno dei due ha funzionato.
Conosco già @@ SCOPE_IDENTITY, in particolare voglio sapere come farlo con OUPUT. Grazie. – Yatrix
È necessario inserirlo in una variabile di tabella, quindi selezionare da quello. Non c'è sintassi da assegnare direttamente a una variabile scalare dalla clausola 'OUTPUT'. –
La clausola [OUTPUT] (http://msdn.microsoft.com/en-us/library/ms177564.aspx) deve essere stampata in una tabella o variabile di tabella. – mellamokb