..
A "dobre známe, že správny dotaz konania je podmienkou pre stabilnú a efektívnu realizáciu.
V tomto článku sa budeme prezentovať málo známy, ale veľmi silný syntax, hovorím o ON DUPLICATE KEY UPDATE bod.
Toto ustanovenie sa používa pri INSERT a jeho účelom je overiť, pred vložením, je zdvojenie primárny kľúč (primárny kľúč), alebo jedinečný kľúč (UNIQUE KEY), a ak sa tak stane motor un'UPDATE MySQL sa miesto toho vložiť.
Výhodou tohto ustanovenia je jasný: píšete jeden dotaz namiesto dvoch s výhodami z hľadiska výkonu a vyčistenie kódu.
Zoberme si príklad. Predpokladajme, že chceme vytvoriť jednoduchý skript, ktorý vykoná záznam návštevníkov našich stránok. Pod tabuľkou štruktúru našej databázy:
Vďaka syntaxe INSERT ... O DUPLICATE KEY UPDATE ... môžeme dosiahnuť rovnaký výsledok s jedným dotazom:
INSERT na hodnoty ip_visitatori (123 .123.123.123 ', 1, TERAZ ()) O KEY DPLICATE UPDATE numero_visite numero_visite = + 1, ultima_visita = NOW ();Preto, ak je IP je zaradenie je, inak spustiť jednoduchý update postihnutých záznamu. Pomocou tejto syntaxe umožňuje získať výhody z hľadiska výkonu vo výške 30%.
S trochou "predstavivosť a vynaliezavosť v otázke klauzula, že môže byť veľmi užitočné v rôznych situáciách.
Napríklad môžeme použiť v kombinácii s podmienkou.
Tu je príklad: Predpokladajme, že máte tabuľku hypotetické on-line aukčnej web v nasledujúcej štruktúre:
Ponuky INSERT na hodnoty (1, 120) O KEY DPLICATE UPDATE migliore_offerta = IF (hodnoty (migliore_offerta) <120, 120, hodnoty (migliore_offerta))Prostredníctvom jednoduchého otázky sme vyriešili jedným ťahom pera ... V opačnom prípade by sme museli použiť niekoľko otázok s následným plytvanie zdrojmi (aj väčšie riziko chýb).
| |
MS Access (Advanced)
Naučte sa vytvárať a spravovať databázy jednoducho a rýchlo. Od 29 €. |
| |
MySQL (kurz)
Správa open-source databázy. Od 39 €. |
| |
SQL a databáz (kurz)
Vytváranie a správa relačnej databázy. Od 39 €. |