Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wykonać blokady tabel/wierszy w Django

Django nie udostępnia jawnie API do blokowania tabel. Z mojego doświadczenia wynika, że ​​dobrze zaprojektowany kod rzadko musi blokować całą tabelę, a większość problemów ze współbieżnością można rozwiązać za pomocą blokowania na poziomie wiersza. To ostatnia deska ratunku:nie rozwiązuje współbieżności, po prostu zabija każdą próbę współbieżności.

Jeśli naprawdę potrzebujesz blokowania na poziomie tabeli, możesz użyć kursora i wykonać surowe instrukcje SQL:

from django.db import connection

with connection.cursor() as cursor:
    cursor.execute("LOCK TABLES %s READ", [tablename])
    try:
        ...
    finally:
        cursor.execute("UNLOCK TABLES;")


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql konwertuje wiele wierszy na kolumny w jednym wierszu

  2. Dołącz do dwóch tabel mysql, relacja jeden do wielu

  3. Jak bezpiecznie wstawić kod do bazy danych mySQL

  4. Dodaj nowy wiersz w MYSQL z tekstu oddzielonego przecinkami w polu tekstowym

  5. Jak połączyć się z MySQL za pomocą Perla?