Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 6787|Răspunde: 1

[Sursă] SQL Server returnează cheia primară după inserare

[Copiază linkul]
Postat pe 07.07.2020 11:55:16 | | | |
Cerințe: O procedură stocată, trebuie să introducem o bucată de date în tabelele A și B, unde relația principală de chei străine dintre tabelul A și tabelul B, coloanele asociate tabelului B sunt cheile principale ale tabelului A, trebuie să inserăm valoarea cheie primară a tabelului A după finalizarea inserării, trebuie să obținem valoarea cheii primare a tabelului A și apoi să introducem datele în tabelul B.

După introducerea unei înregistrări, vrei să obții imediat valoarea de returnare a cheii principale în fișa sa tehnică. Această cheie primară este generată automat.

Mai întâi, creează un tabel temporar pentru testare, codul fiind următorul:


@@IDENTITY

După ce o instrucțiune INSERT, SELECT IN sau bulk copy se finalizează, @@IDENTITY conține ultima valoare de identificare produsă de această afirmație. Dacă această afirmație nu afectează niciun tabel cu coloane identificate, @@IDENTITY returnează NULL. Dacă sunt inserate mai multe rânduri, se generează mai multe valori de identificare, @@IDENTITY ultima valoare de identificator este returnată. Dacă această instrucțiune declanșează unul sau mai multe declanșatoare care execută o operație de inserare ce produce o valoare identificată, apelarea @@IDENTITY imediat după executarea instrucțiunii va returna ultima valoare de identificare generată de declanșator. Dacă instrucțiunea INSERT sau SELECT INTO eșuează sau replicarea în masă eșuează, sau dacă tranzacția este anulată, valoarea @@IDENTITY nu este restaurată la setările anterioare.

IEȘIRE INSERATĂ

Pentru INSERT, poți face referire la tabelul inserat pentru a interoga proprietățile noului rând

Codul testului este următorul:


Efectul este următorul:







Precedent:Interogarea condiționată MSSQL WHERE ignoră condiția
Următor:Agregarea punctelor pe harta Baidu
 Proprietarul| Postat pe 07.07.2020 13:22:22 |
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com