Rețetă selecție prin selectați ... interogare pentru actualizare

Imaginați-vă că executați mai multe procese care fac o interogare selectată în același tabel. Dacă nu asigurați o condiție specială, mai multe procese pot selecta aceeași înregistrare în același timp. În acest articol, vă voi arăta o soluție care va ajuta 100% la evitarea acestei situații.







Pentru a evita situația de mai sus, este necesar să executați nu doar o interogare SELECT, ci o versiune extinsă, pe care mulți nu o suspectează: SELECT ... FOR UPDATE.

Astfel, atunci când această interogare este executată, toate înregistrările afectate din baza de date vor fi blocate până la finalizarea sesiunii bazei de date sau până la actualizarea datelor din înregistrări. Un alt script nu va putea selecta înregistrările blocate până când nu apare una dintre condițiile de mai sus.

Cu toate acestea, nu totul este atât de simplu. Trebuie să îndepliniți mai multe condiții. În primul rând, masa dvs. trebuie construită pe baza arhitecturii InnoDB. În caz contrar, blocarea nu va funcționa. În al doilea rând, înainte de a efectua o probă, trebuie să dezactivați solicitarea de auto-comitere. Ie cu alte cuvinte, executarea automată a cererii. După ce specificați interogarea UPDATE, va trebui să accesați din nou baza de date și să efectuați modificări utilizând comanda COMMIT.

Ultimele 5 lecții din rubrica "PHP"

Când vine vorba de securitatea unui site web, expresia "filtra totul, ecran totul" va fi întotdeauna relevantă. Astăzi, să vorbim despre filtrarea datelor.

  • Expressive 2 acceptă posibilitatea conectării altor componente ZF pe un circuit special. Nu toată lumea îi place această decizie. În acest articol, vom descrie modul de îmbunătățire a procesului de conectare a mai multor module.







  • Să presupunem că trebuie să trimiteți câteva informații în Google Analytics din scriptul de pe server. Cum se face. Răspunsul este în această notă.

  • O selecție de mai multe tipuri de nisip PHP. Pe unele veți putea să vă puneți codul online, dar există și soluții pe care le puteți implementa pe site-ul dvs.

    Rețetă selecție prin selectați ... interogare pentru actualizare

    Prin obținerea de informații imediat prin două canale (vedere și auz), eficiența predării este mult mai mare decât învățarea din cărți. Și temele și testele online vă vor permite să gândiți în mod constant în limba pe care o învățați și să vă verificați imediat cunoștințele!

    Rețetă selecție prin selectați ... interogare pentru actualizare

    Rețetă selecție prin selectați ... interogare pentru actualizare

    Dacă doriți să învățați HTML mult timp, atunci am o veste bună pentru dvs.!

    Rețetă selecție prin selectați ... interogare pentru actualizare

    Dacă ați învățat deja HTML și doriți să treceți mai departe, următorul pas este să învățați tehnologia CSS.

    Rețetă selecție prin selectați ... interogare pentru actualizare

    Dacă doriți să înțeleagă conceptele de domeniu si hosting, învață cum să creeze o bază de date, încărca fișiere pe un site web prin intermediul unui server FTP, crea subdomenii, configurați cutiile poștale pentru site-ul și să monitorizeze participarea, acest curs este conceput special pentru tine!







    Trimiteți-le prietenilor: