Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 7095|Válasz: 0

Az adatbázis alapját képező tranzakciók és tárolt eljárások

[Linket másol]
Közzétéve 2019. 03. 15. 22:45:21 | | | |


előszó


Legutóbb az SQL alapvető tartalmát akartam rendezni, de észrevettem, hogy az óra már kezd fordulni, mielőtt észrevettem. Ez a cikk lent folytatódik.


SMS


Először is készítsük el a szükséges táblázatokat



Először hajtsuk végre egy SQL utasítást


Ez a kód a 0001 egyenlegét 1000-re, a 0002-es fennmaradó összeget pedig 1000-re vonja le. De a táblázat összeállítása során hozzáadtunk korlátokat, és az egyenlegnek nagyobbnak kell lennie, mint 10.

Az eredmények a következők:
                  

Tehát ez a kódvégrehajtási hiba: "A UPDATE állítás ütközik a CHECK "CH_balance" korlátozással. Az ütközés a "DemoDb" adatbázisban jelentkezik a "dbo. Bank", oszlop 'egyenleg'。” 。 Ha az egyik utasítás hiba, akkor a másik utasítás sikeres volt-e.

A lekérdezés eredményei a következők:
                     

Látni fogjuk, hogy egy másik SQL utasítás nem tartalmaz hibákat, de mégsem sikeresen köteleződik el. Íme, amit elárulunk neked.

#Tranzakciók

Mi az a tranzakció?
Szigorúan véve, ha egy művelet kielégíti az atomitást, tartósságot, izolációt és konzisztenst, akkor a műveletet tranzakciónak nevezzük.
Automatikus tranzakciók küldése: SQL Serverben. Alapértelmezés szerint minden SQL utasítás tranzakció.
Tranzakciók megjelenítése: Minden tranzakció explicit módon egy BEGIN TRANSACTION utasítással kezdődik, és kifejezetten egy COMMIT vagy ROLLBACK utasítással ér véget.



Az előbb említett demó Rollback-tel végződött, így az SQL végrehajtás nem lép életbe. Az adatokat nem módosították sikeresen.

A tényleges fejlesztés és alkalmazás során általában egy tranzakcióréteget állítunk fel a nem-lekérdezési utasításon kívül, hogy biztosítsuk az adatok integritását és következetességét a tényleges igények szerint. Vagy csináld meg az egészet, vagy ne csináld meg mindent.

Két rendszerváltozó naplózza a hibás SQL-t. - @@rowcount a sérült sorok számát adja vissza, @@error a hibás kódolást adja vissza

Használjuk ezeket a két rendszerváltozót arra, hogy megállapítsuk, van-e hiba az SQL-ben, és hajtsuk végre a fenti két SQL utasítást.



#Tárolt eljárások

Jelentés: Foglald be egy elvégzett folyamatot (amely lehet összetett) egy névbe, majd ezt a nevet használd a folyamat elvégzéséhez.



>
Paraméter nélküli tárolt eljárások


>Tárolt eljárások paraméterekkel



>Tárolt eljárás visszaküldési értékkel



Próbáld meg az adatbázisban a catch-et



Vannak tárolt eljárások alapértelmezett paraméterekkel is, amelyeket az előző cikkben említettek az oldalformálásról.


Epilógus


A tárolt eljárásokat inkább a tényleges projektjeinkben használják, sok ősi rendszerben dolgoznak, az üzleti logika a tárolt eljárásokban van, és a mögötte álló emberek karbantartják azt, és egyszerűen csak percek alatt meg akarják ütni a kutya fejét előttük. Általánosságban elmondható, hogy az üzleti logika a kódban van írva, de az adatbázisból olvasott adatok száma, és az üzleti logika a tárolási folyamatban történik. Tavaly a vállalat projektjében egy nagyon összetett üzleti logikai láncot helyeztek át a tárolási folyamatra, ami tucatnyiszor növelte a sebességet. Természetesen a különleges körülményeket külön kezelik. A konkrét alkalmazás a tényleges helyzettől függ.






(Megjegyzés: A fenti tartalom az év tanulmányi jegyzetei, ha bármi nem megfelelő dolog van, kérlek, javítsd ki!) )









Előző:Érzek a nagyvállalatok ügyfélszolgálati rendszerével kapcsolatban
Következő:Videó az Andale HCNP és HCIE
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com