sql >> Databáze >  >> RDS >> Mysql

Jak provést uzamčení tabulky/řádku v Django

Django explicitně neposkytuje API pro provádění zamykání tabulky. Podle mých zkušeností dobře navržený kód zřídka potřebuje zamknout celou tabulku a většinu problémů se souběžností lze vyřešit zamykáním na úrovni řádků. Je to poslední pokus:neřeší souběžnost, jednoduše zabíjí jakýkoli pokus o souběžnost.

Pokud opravdu potřebujete zamykání na úrovni tabulky, můžete použít kurzor a provést nezpracované příkazy 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. PHP + SQL Server - Jak nastavit znakovou sadu pro připojení?

  2. Můj program není schopen ukládat hodnoty v MySQL pomocí mysql connector lib v Pythonu

  3. Připravené příkazy PHP PDO a vazba hodnoty dávají chybné číslo parametru

  4. Přidejte identity AppPool IIS 7 jako přihlášení k serveru SQL