Par exemple, nous créons une nouvelle T_User de tableau avec les champs suivants u_id, la clé primaire, l’identifiant, user_name......
Alors effectuons une nouvelle opération d’insertion :
Insérer dans T_User(user_name,user_password,user_email,user_ip) valeurs ('admin', '123456', '32962435@qq.com', '58.20.158.20') ;
Un jour, nous voulons obtenir la valeur de la u_id insérée lors de l’ajout de nouvelles données insérées, et nous savons qu’à partir de MSSQL2005, nous pouvons ajouter une sortie pour entrer une certaine valeur, et l’utiliser pour l’atteindre
Il existe deux méthodes ; L’un d’eux consiste à entrer directement dans un champ, comme :
insérer dans T_User(user_name,user_password,user_email,user_ip) inserted.u_id //output inserted.u_id doit être placé avant les valeurs, et non à la fin de l’instruction SQL, sinon il sera erroné, inséré est fixe, Si vous souhaitez entrer un champ qui est déjà inséré, il suffit de suivre ce champ, ce que nous voulons obtenir est u_id si inserted.u_id valeurs ('admin', '123456', '32962435@qq.com', '58.20.158.20') ;
Une autre façon est d’utiliser @@identity, @@identity est une variable globale intégrée au système, qui consiste à entrer le dernier identifiant, ce que nous pouvons faire en deux étapes ou en une seule étape
Le code de l’implémentation en une étape est le suivant
insérer dans T_User(user_name,user_password,user_email,user_ip) de sortie @@identity valeurs ('admin', '123456', '32962435@qq.com', '58.20.158.20') ; |