2017-06-01 79 views

回答

0

如果使用SYSDBSequence.NextVal生成主鍵,可以在插入標記內或在插入之前生成主鍵,然後可以將其恢復在通過選擇位置[主鍵] = SYSDBSequence.Currval之後立即執行或者,如果您的主鍵列被定義爲AUTO_INCREMENT,則可以在使用MAX插入([主鍵])之後選擇它,例如, Select Name from Patient Where Patient_Id = (Select MAX(Patient_Id) from Patient)

或者,如果以上都不是,則編寫插入觸發器來返回它,或者將PK存儲在表中,這樣您將始終擁有爲您記錄的最新PK。

您可能希望加入在enter link description here古普塔用戶論壇或存在於enter link description here

+0

多存檔信息有任何同等SQL中的基礎MS SQL @@身份?我正在尋找一種通用的方式。如果我們在同一時間進行多次插入,MAX值將不正確? –

+0

然後使用SYSDBSequence.NextVal執行插入 - 然後SYSDBSequence.Currval將包含剛剛插入的值 - 完全像@@ Identity。更好的是 - 您並不需要首先將列定義爲標識列。 – GuptaSteve

相關問題