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

MySqlDB Pythonu nedostává aktualizovaný řádek

Toto je tabulka InnoDB, že? InnoDB je transakční úložiště. Nastavení automatického potvrzení na hodnotu true toto chování pravděpodobně opraví.

conn.autocommit(True)

Případně můžete změnit úroveň izolace transakcí. Více si o tom můžete přečíst zde:http://dev .mysql.com/doc/refman/5.0/en/set-transaction.html

Důvodem tohoto chování je, že v rámci jedné transakce musí být čtení konzistentní. Všechna konzistentní čtení v rámci stejné transakce čtou snímek vytvořený prvním čtením. I když skript pouze čte tabulku, je to také považováno za transakci. Toto je výchozí chování v InnoDB a musíte to změnit nebo spustit conn.commit() po každém čtení.

Tato stránka to vysvětluje podrobněji:http:/ /dev.mysql.com/doc/refman/5.0/en/innodb-consistent-read.html



  1. Plánování kapacity pro MySQL a MariaDB – dimenzování velikosti úložiště

  2. Jak změnit webový port v EBS 12.2

  3. Jak používat klauzuli GROUP BY v SQL

  4. Jak vytvořit formulář pomocí Průvodce formulářem