priekšvārds
Pēdējo reizi es gatavojos organizēt visu SQL pamatsaturu, bet es atklāju, ka pulkstenis griežas, pirms es to zināju. Šis raksts turpinās tālāk.
Teksts
Pirmkārt, izveidosim nepieciešamās tabulas
Vispirms izpildīsim SQL priekšrakstu
Šis kods atņem atlikumu 0001 ar 1000 un atlikumu 0002 ar 1000. Taču, veidojot tabulu, mēs pievienojām ierobežojumus, un atlikumam jābūt lielākam vai vienādam ar 10.
Rezultāti ir šādi:
Tātad šī koda izpildes kļūda: "Priekšraksts UPDATE ir pretrunā ar ierobežojumu CHECK "CH_balance". Konflikts rodas datu bāzē "DemoDb" ar tabulu "dbo. Banka", sleja "bilance"。” 。 Ja viens priekšraksts ir kļūda, tad vai otrs priekšraksts ir veiksmīgi izpildīts.
Vaicājuma rezultāti ir šādi:
Mēs redzēsim, ka citam SQL paziņojumam nav kļūdu, bet tas joprojām nav veiksmīgs. Lūk, ko mēs jums atklāsim.
#Darījumi
Kas ir darījums? Stingri runājot, ja operācija apmierina atomiskumu, noturību, izolāciju un konsekvenci, tad operāciju sauc par darījumu. Automātiski iesniegt darījumus: SQL Server. Pēc noklusējuma katrs SQL priekšraksts ir transakcija. Rādīt transakcijas: katra transakcija sākas ar priekšrakstu BEGIN TRANSACTION un beidzas ar priekšrakstu COMMIT vai ROLLBACK.
Demonstrācija, ko mēs tikko pieminējām iepriekš, beidzās ar atcelšanu, tāpēc SQL izpilde nestājas spēkā. Dati netika veiksmīgi modificēti.
Faktiskajā izstrādē un pielietojumā mēs parasti izveidojam darījumu slāni ārpus nepaziņojuma, kas nav vaicājums, lai nodrošinātu datu integritāti un konsekvenci atbilstoši faktiskajām vajadzībām. Vai nu dariet to visu, vai nedariet to visu.
Ir divi sistēmas mainīgie, kas reģistrē kļūdainu SQL. - @@rowcount atgriež ietekmēto rindiņu skaitu @@error atgriež nepareizu kodējumu
Izmantosim šos divus sistēmas mainīgos, lai noteiktu, vai SQL ir kļūda, un izpildīsim iepriekš minētos divus SQL paziņojumus.
#Uzglabātās procedūras
Nozīme: Iekļaujiet veikto procesu (kas var būt sarežģīts) nosaukumā un pēc tam izmantojiet šo nosaukumu, lai veiktu procesu.
> Saglabātās procedūras bez parametriem
>Saglabātās procedūras ar parametriem
>Saglabātā procedūra ar atgriezto vērtību
Izmēģiniet nozveju datubāzē
Ir arī saglabātas procedūras ar noklusējuma parametriem, kas tika minēti iepriekšējā rakstā par lapu.
Epilogs
Saglabātās procedūras tiek vairāk izmantotas mūsu faktiskajos projektos, daudzās senās sistēmās, biznesa loģika ir rakstīta saglabātajās procedūrās, un cilvēki aiz tās uztur, un viņi vienkārši vēlas dažu minūšu laikā āmurēt suņa galvu priekšā. Vispārīgi runājot, biznesa loģika ir rakstīta kodā, bet cik reižu dati tiek nolasīti no datu bāzes, un biznesa loģika tiek rakstīta glabāšanas procesā. Pagājušajā gadā ļoti sarežģīta biznesa loģikas virkne uzņēmuma projektā tika pārvietota uz uzglabāšanas procesu, kas desmitiem reižu palielināja ātrumu. Protams, īpaši tiek aplūkoti īpaši apstākļi. Konkrētais pielietojums ir atkarīgs no faktiskā scenārija.
(Piezīme: iepriekš minētais saturs ir gada studiju piezīmes, ja ir kaut kas nepiemērots, lūdzu, labojiet to!) )
|