Jedna vec je, ako sa kurzory používajú v zmysle ich správnej syntaxe. Druhá vec, kedy ich použitie dáva zmysel (čo je hneď prvým bodom dokumentácie ku kurzorom - asi z dobrého dôvodu).
Rozumiem, že sa snažíte ľudom začínajúcim v sql, prípadne s PostgreSQL, ukázať nové prostriedky a spôsoby práce. Ale okrem toho, ako niečo použiť, je nemenej dôležité, kedy to má zmysel použiť, aké sú výhody a nevýhody danej techniky / prostriedku / prístupu.
Bez toho im akurát ukážete syntax, a dáte veľmi zlé, áno, veľmi zlé príklady pre použitie kurzoru, a vôbec neupozorníte na podstatné nevýhody.
Ak niekto začínajúci alebo učiaci sa pracovať v PostgreSQL číta tieto komentáre, doporučujem si pohľadať a prečítať viacej na tému kurzory vs. množinové operácie.
Začat môžete napríklad tu: www.google.com/search?q=sql+cursor+vs+set+based
Z nájdených článkov napríklad jeden pomerne obšírny o skúsenosti začiatočníka s kurzormi bez dodatočných súvislostí:
https://msbigurukool.wordpress.com/2014/04/20/how-cursors-degrade-the-performance-of-a-sql/
Aby som parafrázoval autora:
"Každého (okrem ľudí, ktorí to nepoznajú, t.j. všetci okrem cieľovej skupiny tohto blogu), kto sa zamyslí nad uvedenými príkladmi kurzoru napadne, prečo by sme nemohli zlúčiť create, returns, declare, loop, ... (alebo ešte lepšie, vyhnúť sa funkcii a kurzoru kompletne) pre jednoduchú prácu s dátami - do jednoduchého príkazu ? A tie príkazy skutočne existujú - select, insert, update, delete."
SQL Developer
Přečteno 31 979×
Přečteno 19 554×
Přečteno 19 507×
Přečteno 17 277×
Přečteno 16 239×