Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

MySql - Storne procedure i funkcije

[es] :: MySQL :: MySql - Storne procedure i funkcije

[ Pregleda: 3835 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MarkoBalkan

Član broj: 141124
Poruke: 1624
*.adsl.net.t-com.hr.



+19 Profil

icon MySql - Storne procedure i funkcije05.08.2007. u 21:06 - pre 202 meseci
jel mi moze netko objasniti kad se koriste funkcije i cemu sluze, a kad storne procedure!
do sada sam sve radio sa sql upitiva,tako da nemam pojma.
dali se uopce i moraju koristiti ili se sve moze napraviti i bez toga?
 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
*.ADSL.neobee.net.

Sajt: www.baze-podataka.net


+4 Profil

icon Re: MySql - Storne procedure i funkcije05.08.2007. u 21:48 - pre 202 meseci
Stored procedure pomažu u razdvajanju slojeva informacionog sistema na db sloj i aplikativni sloj.

Recimo da na projektu rade dve osobe: aplikativni programer i DB administrator. Tada se njih dvojica dogovore šta neki upit treba da radi. DB administrator sastavi upit i stavi ga u stored proceduru. Programer poziva tu proceduru i ne mora da zna kako upit izgleda.

U čemu je poenta. Aplikacija se pusti u rad i DB administrator nadgleda rad baze. Broj podataka u bazi raste, a onaj upit postaje sve sporiji i sporiji. DB administrator pronadje način da celu stvar ubrza, ali mora da promeni rad samog upita (ne i rezultat). Pošto se upit nalazi u stored proceduri, DB admin može da ga zameni, a da se ne pipne ni jedno slovo source-a aplikacije! Programer nemora ni da zna da je DBA menjao upit.

Ako su programer i DBA ista osoba onda i nema puno smisla koristiti stored procedure.
"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

misk0
.: Lugano :. _.: CH :.

SuperModerator
Član broj: 634
Poruke: 2824
*.adsl.ticino.com.

ICQ: 46802502


+49 Profil

icon Re: MySql - Storne procedure i funkcije06.08.2007. u 08:09 - pre 202 meseci
Ne bih se bas slozio da to ima toliko veze sa osobama. Vishe je podjela na ono sto si prvo rekao - App - DB layere. Ako je potrebno uraditi neku vecu obradu podataka mnogo je bolje to raditi u bazi a ne ucitavati te podatke u aplikaciju, obradjivati i vracati nazad u bazu. Pogotovo ako je rijec o velikoj kolicini podataka.

:: Nemoj se svadjati sa budalom, ljudi cesto nece primjetiti razliku ::
 
Odgovor na temu

mb_sa

Član broj: 50529
Poruke: 172
89.146.164.*



Profil

icon Re: MySql - Storne procedure i funkcije06.08.2007. u 08:39 - pre 202 meseci
Vjerujm da si korstio bult-in Mysql funkcije (UPPER(), SUM(), ...),
tako da bi ti optrilike trebala biti jasna upotreba funkcija (proracuni, formatianje i manipulacija nad podacima).

Koa i u mnogim programskim jezicima, tako i kod mysql funkcija, fukcija mora vratiti samo jednu vrijednost,
dok Sotred procedure mogu vratiti 0 ili orgorman set rezultata.

U principu, razlika izmedju mysql funkcija i procedura je u nacinu pozivanja i šta one vraćaju (već rečeno). Procedure se pozivaju
eksplicitno sa CALL komandom, dok se funkcije pozivaju sa INSERT, SELECT ili UPDATE izrazima!

I recimo jedna od prednosti korištenja stored procedura je što omogućava korištenje multiple upita "kroz jedan put" do baze,
što bi značilo se se moze smanjiti traffic izmedju klijenta i baze, što nekada moze biti znacajno za citav sistem.

Također, treba paziti i na upotrebu stored procedura koja ima svoje mane, a jedan od njih je što iste stavljaju veće opterećenje na DB server,
procesor i memoriju (u biti nisam ovo nikada testirao, tako da ne mogu govoriti iz iskustva).



 
Odgovor na temu

[es] :: MySQL :: MySql - Storne procedure i funkcije

[ Pregleda: 3835 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.