Avatar billede lone_a_p Praktikant
24. marts 2011 - 18:59 Der er 4 kommentarer og
1 løsning

Fordele ved stored procedures

Kære eksperter,

Jeg har netop lagt mit site på php5/mysql5 grundet de udvidede muligheder i mysql med functions og stored procedures.

Jeg er med på den store fordel i at man blot kan henvise til en stored procedure.

Men jeg ved, at der også er en fordel i, at et kald på en eller anden måde gemmes og kan udnyttes ved genkald? Jeg tror, det har noget med stored procedures at gøre, men jeg kan ikke blive helt specifik på, hvad det helt præcist går ud på.

Betyder det fx at hvis jeg kalder et view (uden group) igennem et stored procedure og herefter samme view (med group) at det så kun tæller for ét kald ret performancemæssigt?

Håber nogen vil hjælpe mig til at kunne gennemskue dette.

Mvh Lone
Avatar billede arne_v Ekspert
24. marts 2011 - 20:12 #1
Der er en ubredt tro paa at en SP der udfoerer en given SQL kommando X er langt hurtigere end at udfoere X direkte.

Det er ikke tilfaeldet.

Selv ved databaser som har haft SP support i 20 aar er fordelen stort set umaalelig.

Ved MySQL hvor SP supporten er helt ny vil det snarere gaa langsommere.

Der er en reel fordel i multi statement kontekst:

app---SP---X, Y, Z

er hurtigere end:

app---X
app---Y
app---Z
Avatar billede lone_a_p Praktikant
28. marts 2011 - 19:08 #2
Hej Arne,

Tak for dit svar, det kommer bag på mig, at det er langsommere at benytte i mysql.

Vil du dermed fraråde at benytte SP i mysql? Det må jo siges at være en del lettere, i alt fald ud fra hvad jeg kan se.

Mvh Lone
Avatar billede arne_v Ekspert
28. marts 2011 - 19:17 #3
Du kan jo altid selv maale!

:-)

Der kan vaere gode grunde til at bruge SP:
- hvis ens database skal tilgaaes af applikationer i flere forskellige sprog, saa kan man putte faelles funktionalitet i en SP
- der er visse fordele med hensyn til sikkerhed ved at bruge SP
- i tilfaelde af multi statement udfoersel er der en performance fordel

Saa jeg er ikke imod SP, men du skal bare ikke tro at det at omskrive til SP giver din en stor performance forbedring uanset brugen.
Avatar billede lone_a_p Praktikant
01. april 2011 - 15:55 #4
Hej Arne,

Tak for dit uddybende svar. Jeg håber ikke på den store forbedring, blot det ikke bliver en forringelse :-)

Fordele med hensyn til sikkerhed er absolut en overvejelse i sig selv.

Herudover har jeg brug for multistatement, hvilket har været lidt trægt i det gamle.

Det må blive SP fremover :)

Vil du sende et svar, så jeg kan give dig point? :)

Mvh Lone
Avatar billede arne_v Ekspert
01. april 2011 - 16:04 #5
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester