Voimmeko käyttää tapahtumaa tallennetussa menettelyssä?
Voimmeko käyttää tapahtumaa tallennetussa menettelyssä?

Video: Voimmeko käyttää tapahtumaa tallennetussa menettelyssä?

Video: Voimmeko käyttää tapahtumaa tallennetussa menettelyssä?
Video: Pirkanmaan hyvinvointialueen aluevaltuuston kokous 05.12.2022 2024, Joulukuu
Anonim

Jos me on suoritettava useampi kuin yksi SQL-käsky tallennettu menettely ja me haluat palauttaa minkä tahansa SQL-lauseen tekemät muutokset, jos jokin SQL-lauseista johtuu virheestä, voimme käyttää tapahtumaa tallennetussa menettelyssä.

Vain niin, suoritetaanko tallennettuja menettelyjä tapahtumassa?

Sisäkkäinen tallennetut menettelyt ovat teloitettu in kauppa syrjäisimmän kontekstin tallennettu menettely . Tämä on oletusasetus. Tarjoaa yllä kuvatun oletustoiminnon. Eli kaikki a:n SQL-käskyt tallennettu toiminto suoritetaan sinkkuna kauppa lohko.

Voimmeko edellä mainitun lisäksi käyttää commit-toimintoa? Yleisesti, menettelyt ei pitäisi tehdä . Jos sinä tehdä varastoidun sisällä menettelyä , rajoitat sen uudelleenkäytettävyyttä, koska soittaja, joka haluaa muuttaa menettelyä tekee olla osa suurempaa kauppaa ei voi yksinkertaisesti kutsua menettelyä suoraan.

Voimmeko tähän liittyen käyttää transaktiota SQL-funktiossa?

1 vastaus. Siksi liiketoimia ovat tarpeettomia sql -palvelin toimintoja . Kuitenkin sinä voi muuttaa kauppa eristystaso, voit esimerkiksi käyttää NOLOCK-vihje päästä "lue sitoutumaton" kauppa eristystaso ja lukea sitomattomia tietoja muista liiketoimia.

Voimmeko käyttää sisäkkäisiä tapahtumia SQL:ssä, jos kyllä, niin miten?

SQL Palvelin ei todellakaan tue sisäkkäisiä tapahtumia . On vain yksi ainoa kauppa kerrallaan. Tämä kauppa on perus sisäkkäinen tapahtuma laskuri, @@TRANCOUNT. Jokainen peräkkäinen alkaa kauppa lisäyksiä the laskuri yksitellen, jokainen sitoumus kauppa vähentää sitä yhdellä.

Suositeltava: