Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 6787|Atbildi: 1

[Avots] SQL Server atgriež primāro atslēgu pēc ievietošanas

[Kopēt saiti]
Publicēts 07.07.2020 11:55:16 | | | |
Prasības: Saglabāta procedūra, mums ir jāievieto datu gabals tabulās A un B, kur galvenā ārējās atslēgas attiecība starp tabulu A un tabulu B, kolonnas, kas saistītas ar tabulu B, ir tabulas A primārās atslēgas, mums ir jāievieto tabulas A primārās atslēgas vērtība pēc ievietošanas pabeigšanas, mums jāiegūst tabulas A primārās atslēgas vērtība un pēc tam jāievieto dati tabulā B.

Pēc ieraksta ievietošanas datu lapā nekavējoties jāsaņem primārās atslēgas atgrieztā vērtība. Šī primārā atslēga tiek ģenerēta automātiski.

Pirmkārt, izveidojiet pagaidu tabulu, lai pārbaudītu, kods ir šāds:


@@IDENTITY

Kad priekšraksts INSERT, SELECT IN vai lielapjoma kopēšana ir pabeigts, @@IDENTITY satur pēdējo identifikācijas vērtību, ko radījis šis priekšraksts. Ja šis priekšraksts neietekmē tabulas ar identificētām kolonnām, @@IDENTITY atgriež NULL. Ja tiek ievietotas vairākas rindas, tiek ģenerētas vairākas identifikatoru vērtības, @@IDENTITY tiek atgriezta pēdējā identifikatora vērtība. Ja šis priekšraksts aktivizē vienu vai vairākus trigerus, kas veic ievietošanas operāciju, kas rada identificētu vērtību, izsaucot @@IDENTITY tūlīt pēc priekšraksta izpildes, tiks atgriezta pēdējā trigera ģenerētā identifikācijas vērtība. Ja priekšraksts INSERT vai SELECT INTO neizdodas vai masveida replicēšana neizdodas, vai transakcija tiek atcelta, @@IDENTITY vērtība netiek atjaunota iepriekšējos iestatījumos.

IEVIETOTĀ IZVADE

Programmā INSERT var atsaukties uz ievietoto tabulu, lai vaicātu jaunās rindas rekvizītus

Testa kods ir šāds:


Efekts ir šāds:







Iepriekšējo:MSSQL nosacījuma vaicājums WHERE ignorē nosacījumu
Nākamo:Baidu kartes punktu apkopošana
 Saimnieks| Publicēts 07.07.2020 13:22:22 |
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com