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

Konektor Python MySQL – při použití fetchone byl nalezen nepřečtený výsledek

Vše, co bylo požadováno, bylo pro buffered být nastaven na true!

cursor = cnx.cursor(buffered=True)

Důvodem je, že bez kurzoru s vyrovnávací pamětí se výsledky načítají „líně“, což znamená, že „načítání“ ve skutečnosti načte pouze jeden řádek z úplné sady výsledků dotazu. Když znovu použijete stejný kurzor, bude si stěžovat, že stále máte n-1 výsledků (kde n je množství sady výsledků), které čekají na načtení. Když však použijete kurzor s vyrovnávací pamětí, konektor načte VŠECHNY řádky za scénou a vy prostě vezmete jeden z konektoru, takže si mysql db nebude stěžovat.



  1. Vyberte hodnotu prvku xml v Oracle

  2. Pomalý start MySQL v režimu GTID? Problémem může být velikost binárního souboru protokolu

  3. 20 tipů:Připravte si databázi na Black Friday a Cyber ​​Monday

  4. MS-Access Recordset a Class Module