For eksempel oppretter vi en ny tabell T_User med følgende felt: u_id, primærnøkkel, identifikator, user_name......
La oss deretter utføre en ny innsettingsoperasjon:
Sett inn i T_User(user_name,user_password,user_email,user_ip) verdier('admin', '123456', '32962435@qq.com', '58.20.158.20') ;
En dag ønsker vi å få verdien av u_id som settes inn når vi legger til nye innsatte data, og vi vet at fra MSSQL2005 kan vi legge til en utdata for å legge inn en bestemt verdi, og vi kan bruke den til å oppnå den
Det finnes to metoder; En er å gå direkte inn i et felt, for eksempel:
sett inn i T_User(user_name,user_password,user_email,user_ip) utdata inserted.u_id //utdata inserted.u_id må plasseres foran verdier, ikke på slutten av SQL-setningen, ellers vil den være feil, innsatt er fikset, Hvis du vil legge inn et felt som for øyeblikket er satt inn, følger du bare dette feltet, det vi ønsker å få er u_id så inserted.u_id verdier('admin', '123456', '32962435@qq.com', '58.20.158.20') ;
En annen måte er å bruke @@identity, @@identity er en global variabel innebygd i systemet, som er å legge inn den siste identifikatoren, noe vi kan gjøre i to eller ett steg
Koden for ettstegsimplementeringen er som følger
sett inn i T_User(user_name,user_password,user_email,user_ip) utgang @@identity verdier('admin', '123456', '32962435@qq.com', '58.20.158.20') ; |