SQL Server - Τιμή επιστροφής μετά από INSERT

Προσπαθώ να πάρω πίσω την τιμή-κλειδί μετά από μια εντολή INSERT. Παράδειγμα: Το id είναι μια παραγόμενη τιμή.

    INSERT INTO table (name) VALUES('bob');

Τώρα θέλω να πάρω πίσω το id στο ίδιο βήμα. Πώς γίνεται αυτό;

Χρησιμοποιούμε τον Microsoft SQL Server 2008.

Χρησιμοποιήστε την SCOPE_IDENTITY() για να λάβετε τη νέα τιμή ID

INSERT INTO table (name) VALUES('bob');

SELECT SCOPE_IDENTITY()

http://msdn.microsoft.com/en-us/library/ms190315.aspx

Σχόλια (4)

Μπορείτε να χρησιμοποιήσετε την scope_identity() για να επιλέξετε το αναγνωριστικό της γραμμής που μόλις εισαγάγατε σε μια μεταβλητή και στη συνέχεια να επιλέξετε όποιες στήλες θέλετε από αυτόν τον πίνακα όπου το αναγνωριστικό = η ταυτότητα που πήρατε από την scope_identity().

Δείτε εδώ τις πληροφορίες του MSDN http://msdn.microsoft.com/en-us/library/ms190315.aspx

Σχόλια (0)

Αφού πραγματοποιήσετε μια εισαγωγή σε έναν πίνακα με στήλη ταυτότητας, μπορείτε να ανατρέξετε στο @@IDENTITY για να λάβετε την τιμή: http://msdn.microsoft.com/en-us/library/aa933167%28v=sql.80%29.aspx

Σχόλια (2)