[python] praca s textom

superman feed na centrum.cz
Neděle Červen 22 21:33:25 CEST 2008


Prepared statements byly původně zamýšlené pro opakované posílání 
stejných SQL příkazů, které se liší jen v několika konstantách. Výhodou 
bylo, že databázový stroj je jednou zparsoval, a jednou pro ně zpracoval 
prováděcí plán a při opakovaných provedeních pak pouze rozjel akci bez 
zdržování.

U MySQL musíte mít na paměti, že to není plnohodnotná databáze, ale 
velmi slabá hračka. Tudíž zkušenosti odjinud moc neplatí - MySQL špatně 
optimalizuje, kromě toho také řadu SQL příkazů ani neumí - dost často 
dostávám od MySQL hlášení - "not yet implemented" na i poměrně 
jednoduché SQL dotazy. Základní vlastnosti skutečných databází MySQL nemá.

Na dobré databázi není prepared statements zpomalení, a pokud ano, tam 
neměřitelné. Osobně bych si nedělal hlavu s režií prepared statements, 
protože tato režie bude velmi zanedbatelná oproti jiným věcem. Pro práci 
s databází bych bral jako velmi dobré zjednodušení dogma toto: prepared 
statements mají zanedbatelnou režii, a nebál bych se je používat 
kdekoli, a pokud sázím do db více příkazů za sebou lišící se jen v 
konstantách, pak prepared statements mohou urychlit výsledek

Takže odpověď přímo v jazyce tázajícího: je to viac menej jedno, nie sú 
natolik pomalšie aby sa tým malo vobec smysel zaobierať :-)

Miloslav Ponkrác

> nevie mi niekto povedat nahodou, kto uz mal vacsie zatazenie databazi,
> ci je rozdiel medzi prepaerd statements a normlanymi prikazmi az taky
> velky(su pri jednoduchych prikazov tie prepared statements az take
> pomale, alebo je to viac-menej jedno?)
> _______________________________________________
>   



Další informace o konferenci Python