-2
如何獲取最後插入的行的主鍵?獲取最後插入的行主鍵
PS注意,主鍵是VARCHAR
類型,以便SCOPE_IDENTITY()
不爲我工作..
我發現這樣一個問題:How can I get the last inserted primary key?但我無法理解他在說什麼
insert into T output inserted.pk values('new item');
任何人都可以請指導我這一點,因爲我是SQL Server的新手,並且無法理解這裏的觀點嗎?
謝謝。
OUTPUT Inserted.Pk會給你一旦你運行插入查詢時得到的id,如果你想獲得最後插入的記錄的id(在運行插入查詢之前),那麼你可以使用'max()' 。即SELECT max([id])FROM [TableName]。這裏你真正的要求是什麼? – aads
如果主鍵的類型是'varchar',那麼一些自定義代碼正在生成它 - 這是你自己的代碼緊接着'INSERT'或者說,觸發器。但是在這兩種情況下,它都是自定義代碼 - 所以你不應該期望SQL Server能夠神奇地告訴你這段代碼做了什麼。 –