Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 27 odgovora
  • 9.720 pregleda

Najnovija ↓

Re: Stored procedure - prva pomoc 01.03.2007. u 21:10 · pre 239 meseci #21
Izvinjavam se, izgledalo mi je da je ironija očigledna.
"Defanzivno programiranje" je samo pokazalo da se ne može sve predvideti.
Integritet podataka je kao Zakon, ponekad tup ali jedini način da se uvede red.
Re: Stored procedure - prva pomoc 01.03.2007. u 21:27 · pre 239 meseci #22
Onda primi ti moje izvinjenje, nesto sam malo izbacen iz takata (ne vezano za ovaj forum ovde) pa sam dosta hirovito reagovao. Inace ako budem dobre volje i uhvatio malo vremena napisao bi jednom generalno problem danasnjih baza odnosno njihov rad. Ukratko ono sto meni nedostaje u svetu baza je kompajler, a i taj integritet podataka i razna resenja mi se u opste ne svidjaju, ima mnogo preklapanja ili ispreplitanja raznih slojeva sa svakavim validatorima ali o ovome bi na nekoj drugoj temi.
Re: Stored procedure - prva pomoc 01.03.2007. u 21:56 · pre 239 meseci #23
Citat:
branimir.ts: Razlika je u tome sto ce UPDATE formirati pokazivace na 1000 000 redova, dok ce kursor imati pointer samo na tekuci red.

Po ovom clanku i kurzor pravi milion pointera.

Priznajem da sam malo koristio MS SQL Server i da ga vise ne koristim, ali znam da se u RDBMS-u kojeg koristim kurzori izvrsavaju cak i stotinjak puta sporije od adekvatnih cistih UPDATE naredbi.
Potpis
"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
Re: Stored procedure - prva pomoc 01.03.2007. u 22:13 · pre 239 meseci #24
Ja jos dok nisam ni radio na SQL Serveru cuo sam bio da je svaki FETCH novi SELECT sa dodatnim opterecenjima, plus jos na mikro forumu ili serbiancafe-u ili je to bilo reci ovde na ES-u ne secam se, bilo price da svako u MS ko radi sa kursorima dobija otkaz, bas se pitam da li je to bila istina.

Ja koristim SQL Server svaki dan ali kursore slabo, jedino gde ih koristim je za generisane skriptova, neka vrsta automatizacije posla, prakticnije je preko kursora ali sve to je u samoj izradi baze a ne i koriscenje.
Re: Stored procedure - prva pomoc 02.03.2007. u 03:03 · pre 239 meseci #25
@branimir.ts
- Koja je konfiguracija servera na kome brišeš ogromnu tabelu pomoću kursora pre svega me interesuje broj procesora i veličina memorije, da li ti je tempdb na posebnom RAID i kako ti je setovan SQL Server što se tiče paralelnog izvršavanja upita?

- Koliko dugo se izvršavalo brisanja ogromne tabele sa DELETE i te iste tabele sa kursorom i koliko ti se povećao log fajl prilikom izvršavanja obe komande i koliko se povećao tempdb prilikom brisanja kursorom?
Potpis
You can fool some people sometimes,
But you can't fool all the people all the time. (Bob Marley)
Re: Stored procedure - prva pomoc 02.03.2007. u 03:06 · pre 239 meseci #26
@branimir.ts
- Koja je konfiguracija servera na kome brišeš ogromnu tabelu pomoću kursora pre svega me interesuje broj procesora i veličina memorije, da li ti je tempdb na posebnom RAID i kako ti je setovan SQL Server što se tiče paralelnog izvršavanja upita?

- Koliko dugo se izvršavalo brisanja ogromne tabele sa DELETE i te iste tabele sa kursorom i koliko ti se povećao log fajl prilikom izvršavanja obe komande i koliko se povećao tempdb prilikom brisanja kursorom?
Potpis
You can fool some people sometimes,
But you can't fool all the people all the time. (Bob Marley)
Re: Stored procedure - prva pomoc 02.03.2007. u 18:19 · pre 239 meseci #27
Procitao sam clanak koji je Chachka naveo. Tamo postoji sekcija "Cursor adventages" u koja pocinje sa:
Citat:
Cursors are best used when performing row-by-row operations that can't be accomplished with set-based operations (i.e., when you need to fire a stored procedure once per row in a table).


pa onda malo dalje

Citat:

Quick and dirty
SQL developers are often under the gun to write code fast. Writing a cursor requires less mental effort than writing its set-based equivalent. Unfortunately these shortcuts often remain in production and cause problems further down the line. (Thanks for the above two observations from SQL MVPs Itzik Ben Gan and Erland Sommarskog.)

Cursors are faster than using while loops.


Sekcija "Cursor Advantages" zavrsava se recenicom:
Citat:
With advantages like these, you may wonder what are the disadvantages of using cursors. Please, oh please, oh please keep reading.


Poslusam ih, citam dalje i usekciji 'Disadvantages' nadjem ovo:
Citat:
Cursors are frequently the wrong tool for the wrong task. They're used for quick-and-dirty programming when a developer does not have a good understanding of set operations -- or they're used for the wrong task entirely.
bas sam to hteo da kazem :-)

Uocite u sekciji Advantages kaze se dva puta "Cursors are faster than using while loops". Tu i jeste problem. Dobar dizajn baze nema potrebu za nikakvim 'loops'. Ima situacija u zivotu kada se to ne moze izbeci, cak se ni Identity ne mogu izbeci uvek. To su izuzeci od kojih ne treba praviti pravilo. Znaci, staracka mudrost bi bila: izbegavaj kursore i identity kad god mozes. Sa brojem godina iskustva i starosti, smanjuje se broj situacija kada mislis da se mora koristiti kusrso i identity.

A ja nisam vise SQL programer, jer nikad nisam ni bio SQL programer. SQL nije program environment pa stoga ne postoji tako nesto - SQL programer. Postoje programeri u raznim jezicima, platformama i okruzenjima (web, DOS, Windows, .NET).
A programetre neko mora da kontrolise jer u najboljoj nameri naprave stetu. Losi programeri naprave malu stetu, veliku stetu naprave dobri programeri kad se umesaju u sta im nije posao - 'cursors - they're used for the wrong task entirely'

:-)




Re: Stored procedure - prva pomoc 02.03.2007. u 23:19 · pre 239 meseci #28
Slazem se! SQL Programer je pojam koji dolazi od Boga pitaj gdje...Cak i u nekim oglasima mozes vidjeti nesto tipa: "Trazi se sql programer" - Ne bi trebalo da ga ikad nadju! Isto kao kad bi reko trazi se supermen:-)
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme