sql >> Database teknologi >  >> RDS >> Sqlserver

Hvad er den lagrede procedure og hvorfor den lagrede procedure?

Hej,

I denne artikel vil jeg fortælle om den Stored Procedure, som bør bruges i store projekter.

Jeg synes bestemt, at det bør bruges i storskalaprojekter, fordi forskellen mellem lagrede procedurer kun forekommer i projekter, der kræver storskala ydeevne og effektivitet.

Stored procedure generelt kan vi beskrive som følger:SQL-sætninger, som ikke er nødvendige for at kompilere efter første kompilering og opbevarer i databaseserveren. På den anden side kan vi sige T-SQL-sætninger gemt i databaseserveren i stedet for applikationslaget.

Lagrede procedurer, som i andre programmeringssprog, kan køres uden parametre. Det kaldes også SP, når det bruges i applikationsudvikling. Alle databaseoperationer kan udføres med Stored procedures.

En af de smukkeste funktioner ved at bruge lagrede procedurer er måske at adskille programmeringssprogkoderne fra DML (Database manipulation Language) databaseforespørgsler. Derudover, når du har skrevet og kompileret en SP, du kan bruge mange gange.

Generelt vil jeg angive fordelene ved Stored procedures, og hvorfor de bruges for meget som følger.

  • Lagrede procedurer er meget hurtige, fordi de opbevares i databaseserveren, grunden er, at de ikke behøver at kompilere én gang mere efter kompilering én gang alene. SQL-koden, som du sendte i applikationslaget, skal dog kompileres igen og igen ved hver transaktion. Dette er et stort spild af tid for store projekter og servere, der betjener mere end 1 klient.
  • Giver fremragende besparelser i netværkstrafik.
  • Det giver automatisk parameterisering til SQL-sætninger. I stedet for at erstatte alle parametre på det sted, hvor SQL-sætninger passerer, kan du kun ændre parametrene eller reglerne i SP. Dette løser også kompleksiteten af ​​applikationer, der gør det muligt for din applikation at være modulær.
  • Du kan bruge T-SQL-kommandoer ud over programmeringsudtryk (if, while, for osv.), når du skriver lagrede procedurer.
  • Lagrede procedurer er mere pålidelige, fordi kun input- og outputparametrene vises i applikationslaget. Hvis vi mener, at adgang til databaseserveren normalt sker med bruger-id og adgangskode, kan vi sige, at brug af SP er et element af tillid til vores koder.

Jeg har forklaret fordelene ved lagrede procedurer, der faldt mig ind ovenfor. Næsten alle softwareapplikationer bruger ikke normale sql-koder generelt.

Som jeg sagde ovenfor, gør SP'er meget fordelagtige at blive styret fra et enkelt punkt og bruge det mere end ét sted og ikke være i stand til at se andre mennesker.

Især når vi tænker på netværkstrafik, at sende mange linjers SQL-kommandoer sendt af klienten til serveren i stedet for at sende navnet på den lagrede procedure til serveren én gang betyder det, at netværkstrafik er meget lettet.

Der er fire typer af lagrede procedurer.

  1. Systemlagret procedure:  de er i masterdatabasen og sp__ præfiks bruges til disse lagrede procedurer. De bruges i systemrelaterede administrative opgaver i databasen.
  2. Brugerbaseret lagret procedure: Disse lagrede procedurer bruges til vores applikationer. Du kan slette eller ændre disse SP.
  3. Udvidet lagret procedure : Generelt er det kompileret som .dll og en type lagret procedure, der kompilerer databaseserverens funktionalitet. den tilføjes kun til masterdatabasen.
  4. CLR Stored Procedure: Det er en slags lagret procedure udviklet i et CLR-miljø ved at bruge et hvilket som helst sprog.


  1. Opret beregnet kolonne ved hjælp af data fra en anden tabel

  2. PostgreSql INDSÆT FRA VÆLG RETURNERING ID

  3. Oracle lag mellem commit og select

  4. Overførsel af parametre til en JDBC PreparedStatement