Περισσότερα
SQL Server - Τιμή επιστροφής μετά από INSERT
Προσπαθώ να πάρω πίσω την τιμή-κλειδί μετά από μια εντολή INSERT. Παράδειγμα: Το id είναι μια παραγόμενη τιμή.
INSERT INTO table (name) VALUES('bob');
Τώρα θέλω να πάρω πίσω το id στο ίδιο βήμα. Πώς γίνεται αυτό;
Χρησιμοποιούμε τον Microsoft SQL Server 2008.
278
3
Χρησιμοποιήστε την
SCOPE_IDENTITY()
για να λάβετε τη νέα τιμή IDhttp://msdn.microsoft.com/en-us/library/ms190315.aspx
Μπορείτε να χρησιμοποιήσετε την
scope_identity()
για να επιλέξετε το αναγνωριστικό της γραμμής που μόλις εισαγάγατε σε μια μεταβλητή και στη συνέχεια να επιλέξετε όποιες στήλες θέλετε από αυτόν τον πίνακα όπου το αναγνωριστικό = η ταυτότητα που πήρατε από τηνscope_identity()
.Δείτε εδώ τις πληροφορίες του MSDN http://msdn.microsoft.com/en-us/library/ms190315.aspx
Αφού πραγματοποιήσετε μια εισαγωγή σε έναν πίνακα με στήλη ταυτότητας, μπορείτε να ανατρέξετε στο @@IDENTITY για να λάβετε την τιμή: http://msdn.microsoft.com/en-us/library/aa933167%28v=sql.80%29.aspx