例如我們新建了一張表T_User,字段如下u_id,主鍵,為標(biāo)示符,user_name......
然后我們來(lái)執(zhí)行一個(gè)新增插入操作:
insert into T_User(user_name,user_password,user_email,user_ip)
values('admin','123456','32962435@qq.com','58.20.158.20') ;
有一天,我們想在新增插入數(shù)據(jù)的時(shí)候獲取到插入這條數(shù)據(jù)的u_id的值是多少,我們知道從MSSQL2005以后新增了一個(gè)output,用來(lái)輸入某個(gè)值,我們就可以利用它來(lái)實(shí)現(xiàn)
方法有兩種;一種是直接輸入某個(gè)字段,如:
insert into T_User(user_name,user_password,user_email,user_ip) output inserted.u_id ///output inserted.u_id一定要放在 values之前,不能放在sql語(yǔ)句的最后面,不然是出錯(cuò)的,inserted是固定的,你想輸入當(dāng)前插入的某個(gè)字段就在后面接這個(gè)字段即可,我們想獲得的是u_id所以是inserted.u_id
values('admin','123456','32962435@qq.com','58.20.158.20') ;
另一種方法是使用@@identity,@@identity是系統(tǒng)內(nèi)置的一個(gè)全局變量,其左右就是輸入最后一次的標(biāo)示符,我們可以兩步走也可以通過(guò)一步實(shí)現(xiàn)
一步實(shí)現(xiàn)的代碼如下
insert into T_User(user_name,user_password,user_email,user_ip) output @@identity
values('admin','123456','32962435@qq.com','58.20.158.20') ;
更多信息請(qǐng)查看IT技術(shù)專欄
2025國(guó)考·省考課程試聽(tīng)報(bào)名