SQL:ssä tallennettu toimintosarja on joukko SQL-kyselyjä, jotka voidaan tallentaa ja käyttää uudelleen useita kertoja. Se on erittäin hyödyllinen, koska se vähentää tarvetta kirjoittaa SQL-kyselyitä uudelleen. Se parantaa tietokannan hallinnan tehokkuutta, uudelleenkäytettävyyttä ja turvallisuutta.
merkkijono int
Käyttäjät voivat myös välittää parametreja tallennetuille proseduureille, jotta tallennettu toimintosarja voi toimia välitettyjen parametriarvojen perusteella.
Tallennetut toiminnot luodaan suorittamaan yksi tai useampi DML toiminnot tietokannassa. Se ei ole muuta kuin ryhmä SQL-lauseet joka hyväksyy jonkin syötteen parametrien muodossa, suorittaa jonkin tehtävän ja saattaa palauttaa arvon.
Syntaksi
Kaksi tärkeää syntaksia tallennettujen toimintosarjojen käyttämiseen SQL:ssä ovat:
Syntaksi tallennetun menettelyn luomiseksi
CREATE PROCEDURE menettelyn_nimi
(parametri1 tietotyyppi, parametri2 tietotyyppi, …)
KUTEN
ALKAA
— Suoritettavat SQL-käskyt
LOPPU
Syntaksi tallennetun toimenpiteen suorittamiseksi
EXEC-menettelyn_nimi parametrin1_arvo, parametrin2_arvo, ..
Parametri
Tärkein osa on parametrit. Parametreja käytetään arvojen välittämiseen menettelyyn. On olemassa erityyppisiä parametreja, jotka ovat seuraavat:
- ALKAA: Tämä suorittaa suoraan tai voimme sanoa, että se on suoritettava osa.
- LOPPU: Tähän asti koodi suoritetaan.
Esimerkki tallennetusta SQL-menettelystä
Katsotaanpa esimerkkiä SQL:n tallennetusta menettelystä ymmärtääksemme sitä paremmin.
Kuvittele SampleDB-niminen tietokanta, Customers-taulukko, jossa on esimerkkitietoja, ja tallennettu toimintosarja nimeltä GetCustomersByCountry.
mysql listan käyttäjiä
Tallennettu toimintosarja ottaa parametrin Maa ja palauttaa Asiakkaat-taulukosta asiakasluettelon, joka vastaa määritettyä maata. Lopuksi tallennettu toimenpide suoritetaan parametrilla Sri Lanka asiakasluettelon hakemiseksi Sri Lankasta.
Kysely:
-- Create a new database named 'SampleDB' CREATE DATABASE SampleDB; -- Switch to the new database USE SampleDB; -- Create a new table named 'Customers' CREATE TABLE Customers ( CustomerID INT PRIMARY KEY, CustomerName VARCHAR(50), ContactName VARCHAR(50), Country VARCHAR(50) ); -- Insert some sample data into the Customers table INSERT INTO Customers (CustomerID, CustomerName, ContactName, Country) VALUES (1, 'Shubham', 'Thakur', 'India'), (2, 'Aman ', 'Chopra', 'Australia'), (3, 'Naveen', 'Tulasi', 'Sri lanka'), (4, 'Aditya', 'Arpan', 'Austria'), (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain'); -- Create a stored procedure named 'GetCustomersByCountry' CREATE PROCEDURE GetCustomersByCountry @Country VARCHAR(50) AS BEGIN SELECT CustomerName, ContactName FROM Customers WHERE Country = @Country; END; -- Execute the stored procedure with parameter 'Sri lanka' EXEC GetCustomersByCountry @Country = 'Sri lanka';>
Huomautus: Sinun on varmistettava, että käyttäjätilillä on tarvittavat oikeudet tietokannan luomiseen. Voit yrittää kirjautua sisään toisena käyttäjänä, jolla on järjestelmänvalvojan oikeudet, tai ottaa yhteyttä tietokannan ylläpitäjään ja myöntää tarvittavat oikeudet käyttäjätilillesi. Jos käytät pilvipohjaista tietokantapalvelua, varmista, että olet määrittänyt käyttäjätilin ja sen käyttöoikeudet oikein.
Lähtö:
| Asiakkaan nimi | Yhteyshenkilön nimi |
|---|---|
| Naveen | Tulasi |
Tärkeitä seikkoja SQL-tallenteista toimenpiteistä
- Tallennettu toimintosarja on valmisteltu SQL-koodi, jonka voit tallentaa, joten koodia voidaan käyttää uudelleen ja uudelleen.
- Tallennetut toiminnot mahdollistavat toistuvasti käytetyn koodin tallentamisen tietokantaan ja suorittamisen sieltä eikä asiakkaalta. Tämä tarjoaa modulaarisemman lähestymistavan tietokannan suunnitteluun.
- Koska tallennetut proseduurit kootaan ja tallennetaan tietokantaan, ne ovat erittäin tehokkaita. SQL Server kokoaa jokaisen tallennetun toimintosarjan kerran ja käyttää sitten suoritussuunnitelmaa uudelleen. Tämä johtaa valtaviin suorituskyvyn parannuksiin, kun tallennettuja toimenpiteitä kutsutaan toistuvasti.
- Tallennetut menettelyt tarjoavat paremman tietoturvan. Käyttäjät voivat suorittaa tallennetun proseduurin ilman, että heidän tarvitsee suorittaa mitään lausekkeita suoraan. Siksi käyttäjälle voidaan myöntää lupa suorittaa tallennettu toimintosarja ilman, että hänellä on oikeuksia taustalla oleviin taulukoihin.
- Tallennetut menettelyt voivat vähentää verkkoliikennettä ja latenssia, mikä parantaa sovellusten suorituskykyä. Yksi kutsu tallennettuun proseduuriin voi suorittaa useita käskyjä.
- Tallennetuilla menettelyillä on parempi tuki virheiden käsittelylle.
- Tallennettuja proseduureja voidaan käyttää kehittyneiden tietokantatoimintojen tarjoamiseen, kuten tietojen muokkaamiseen taulukoissa ja näiden muutosten kapseloinnissa tietokantatapahtumiin.