sql >> Database teknologi >  >> RDS >> Mysql

Pythons MySqlDB bliver ikke opdateret række

Dette er en InnoDB-tabel, ikke? InnoDB er transaktionslagringsmotor. Indstilling af autocommit til sand vil sandsynligvis løse denne adfærd for dig.

conn.autocommit(True)

Alternativt kan du ændre transaktionsisolationsniveauet. Du kan læse mere om dette her:http://dev .mysql.com/doc/refman/5.0/en/set-transaction.html

Årsagen til denne adfærd er, at inde i en enkelt transaktion skal aflæsningerne være konsekvente. Alle konsistente læsninger inden for samme transaktion læser det øjebliksbillede, der er etableret ved den første læsning. Selvom dit script kun læser tabellen, betragtes dette også som en transaktion. Dette er standardadfærden i InnoDB, og du skal ændre det eller køre conn.commit() efter hver læsning.

Denne side forklarer dette mere detaljeret:http:/ /dev.mysql.com/doc/refman/5.0/en/innodb-consistent-read.html



  1. Få adgang til eksperternes syn på MVP-topmødet i 2020

  2. Hvordan fungerer MySQL CASE?

  3. Alternativ løsning til DCount og DLookup med MS SQL Server Backend

  4. WooCommerce:Find produkterne i databasen