Как я могу получить первичный ключ последней вставленной строки?Получение последнего вставленного первичного ключа строк
PS Обратите внимание, что первичный ключ типа VARCHAR
так SCOPE_IDENTITY()
не работает для меня ..
Я нашел этот вопрос: How can I get the last inserted primary key?, но я не был в состоянии понять, что он говорит
Вставить в T Выход вставлен.pk значения ('новый элемент');
Может ли кто-нибудь, пожалуйста, направить меня на это, так как я новичок в SQL Server и не смог понять этот пункт здесь?
Спасибо.
OUTPUT Inserted.Pk предоставит вам идентификатор, который генерируется после запуска запроса вставки, если вы хотите получить идентификатор последней вставленной записи (перед запуском запроса вставки), то вы можете использовать 'max()' , т. е. SELECT max ([id]) FROM [TableName]. каково ваше настоящее требование здесь? – aads
Если первичный ключ имеет тип 'varchar', то какой-то пользовательский код его генерирует - это либо ваш собственный код непосредственно перед' INSERT', либо, скажем, триггером. Но в обоих случаях это настраиваемый код, поэтому вы не должны ожидать, что SQL Server сможет магически рассказать вам, что сделал этот код. –