”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 为什么我的 Python MySQL 查询不断返回相同的数据?

为什么我的 Python MySQL 查询不断返回相同的数据?

发布于2024-11-19
浏览:225

Why Does My Python MySQL Query Keep Returning the Same Data?

从 Python 查询 MySQL 产生相同的数据

从 Python 重复查询 MySQL 数据库以检索动态数据带来了挑战。众所周知,仅在循环中迭代查询不足以从数据库中获取新数据。

您提供的代码举例说明了此问题:

for i in range(listSize):
    #...
    mycursor = mydb.cursor(dictionary=True)
    mycursor.execute(sql)
    #...

即使尝试使用 fetchall、fetchmany 和 fetchone,结果仍然停滞不前。

解决方案:提交连接

要解决此问题,每个查询执行后都必须提交连接。此操作结束正在进行的事务并启动一个新事务,使后续查询能够检测上一个事务期间所做的更改。

while True:
    #...
    mycursor = mydb.cursor(dictionary=True)
    mycursor.execute(sql)
    #...
    mydb.commit()
    #...

隔离级别和可重复读取默认值

这个概念植根于隔离级别。默认情况下,MySQL 对 InnoDB 使用 REPEATABLE READ。这意味着在事务内,后续读取将保留由事务初始读取建立的快照。因此,如果不提交,后续查询将不会捕获任何更改。

最新教程 更多>
  • 如何使用递归宏迭代宏参数?
    如何使用递归宏迭代宏参数?
    宏参数上的 Foreach 宏在编程领域,宏提供了执行重复任务的便捷方法。然而,尝试创建一个迭代另一个宏的参数的宏可能会带来挑战。让我们探讨如何克服这个障碍并深入研究递归宏的领域。递归宏可用于遍历传递给宏的参数列表。然而,这种方法可能容易出错,因为它可能会导致无限递归。为了解决这个问题,我们引入了一...
    编程 发布于2024-11-19
  • 在 Go 中使用 WebSocket 进行实时通信
    在 Go 中使用 WebSocket 进行实时通信
    构建需要实时更新的应用程序(例如聊天应用程序、实时通知或协作工具)需要比传统 HTTP 更快、更具交互性的通信方法。这就是 WebSockets 发挥作用的地方!今天,我们将探讨如何在 Go 中使用 WebSocket,以便您可以向应用程序添加实时功能。 在这篇文章中,我们将介绍: WebSocke...
    编程 发布于2024-11-19
  • 大批
    大批
    方法是可以在对象上调用的 fns 数组是对象,因此它们在 JS 中也有方法。 slice(begin):将数组的一部分提取到新数组中,而不改变原始数组。 let arr = ['a','b','c','d','e']; // Usecase: Extract till index p...
    编程 发布于2024-11-19
  • 为什么“text-align: center”不适用于 CSS 中的 Colgroup?
    为什么“text-align: center”不适用于 CSS 中的 Colgroup?
    在 CSS Colgroups 中使用“text-align: center”:故障排除指南格式化表格时遇到的一个常见挑战是水平对齐文本。虽然“text-align”属性可以单独应用于表格单元格,但应用于 colgroup 时有时似乎没有效果。下面解释了发生这种情况的原因以及克服该问题的解决方案。C...
    编程 发布于2024-11-19
  • 在 PHP 中处理时间格式时,如何避免出现意外结果?
    在 PHP 中处理时间格式时,如何避免出现意外结果?
    PHP 中的时间操作:从 H:i 中添加和减去 30 分钟在 PHP 中,处理与时间相关的任务对于各种任务至关重要应用程序。一种常见情况涉及修改格式为“H:i”的时间值。此格式表示以小时和分钟为单位的时间,例如“10:00”或“13:30”。要从这些值中添加或减去特定时间间隔,我们可以使用 strt...
    编程 发布于2024-11-19
  • 如何从 java.sql.ResultSet 获取列名?
    如何从 java.sql.ResultSet 获取列名?
    如何从java.sql.ResultSet获取列名**java.sql.ResultSet接口提供对数据库查询结果的访问,但不直接提供使用索引检索列名的方法。要获取此信息,您可以利用 ResultSetMetaData 元数据对象。以下步骤演示如何使用列索引以字符串形式获取列名称:获取 Result...
    编程 发布于2024-11-19
  • 如何在 Eclipse 中访问受限类:绕过非 API 类限制?
    如何在 Eclipse 中访问受限类:绕过非 API 类限制?
    访问限制:在 Eclipse 中处理非 API 类限制Eclipse 强制执行访问限制,以防止开发人员无意中使用其之外的类预期的公共 API。但是,某些情况下可能需要访问受限类。访问限制错误的原因报告的错误(“访问限制:类型‘应用程序’不是 API 。 ..") 当 Eclipse 检测到...
    编程 发布于2024-11-19
  • Bootstrap 4 Beta 中的列偏移发生了什么?
    Bootstrap 4 Beta 中的列偏移发生了什么?
    Bootstrap 4 Beta:列偏移的删除和恢复Bootstrap 4 在其 Beta 1 版本中引入了重大更改柱子偏移了。然而,随着 Beta 2 的后续发布,这些变化已经逆转。从 offset-md-* 到 ml-auto在 Bootstrap 4 Beta 1 中, offset-md-*...
    编程 发布于2024-11-19
  • 如何在 PHP 中组合两个关联数组,同时保留唯一 ID 并处理重复名称?
    如何在 PHP 中组合两个关联数组,同时保留唯一 ID 并处理重复名称?
    在 PHP 中组合关联数组在 PHP 中,将两个关联数组组合成一个数组是一项常见任务。考虑以下请求:问题描述:提供的代码定义了两个关联数组,$array1 和 $array2。目标是创建一个新数组 $array3,它合并两个数组中的所有键值对。 此外,提供的数组具有唯一的 ID,而名称可能重合。要求...
    编程 发布于2024-11-19
  • 为什么内联 JavaScript 无法在具有外部源的脚本标签中工作?
    为什么内联 JavaScript 无法在具有外部源的脚本标签中工作?
    使用 HTML 脚本标签加载脚本HTML 脚本标签用于包含和执行 JavaScript 代码。默认情况下,此标记采用外部源属性,例如 scr 来加载 JavaScript 文件。但是,尝试在脚本标记中包含内联 JavaScript,如下所示:<script src="myFile.j...
    编程 发布于2024-11-19
  • 如何使用 MySQL 查找今天生日的用户?
    如何使用 MySQL 查找今天生日的用户?
    如何使用 MySQL 识别今天生日的用户使用 MySQL 确定今天是否是用户的生日涉及查找生日匹配的所有行今天的日期。这可以通过一个简单的 MySQL 查询来实现,该查询将存储为 UNIX 时间戳的生日与今天的日期进行比较。以下 SQL 查询将获取今天有生日的所有用户: FROM USERS ...
    编程 发布于2024-11-19
  • 关于该项目的介绍以及...我自己
    关于该项目的介绍以及...我自己
    关于我的简要信息...... 你好世界!我叫卢卡斯,是一名 31 岁的巴西人,住在捷克共和国(或捷克??),我是一名软件工程师。我在不同的领域工作了 7/8 年,并且被困在这个领域。我没有动力,只是做基础工作并保持收入。但我错过了一些可以激励我的东西,也缺少了从工作中获得“热情”的...
    编程 发布于2024-11-19
  • 如何跨子域共享localStorage数据?
    如何跨子域共享localStorage数据?
    跨子域共享 localStorage从 cookie 迁移到 localStorage 时,跨域数据访问可能成为一个挑战。在像问题中描述的场景中,不同的子域(例如 site.example 和 www.site.example)隔离其 localStorage 对象,数据共享会出现问题。答案中提出的...
    编程 发布于2024-11-19
  • 如何在同一结果集上多次使用“mysqli_fetch_array()”?
    如何在同一结果集上多次使用“mysqli_fetch_array()”?
    多次使用 mysqli_fetch_array()使用 PHP 和 MySQL 处理数据库时,您可能会遇到需要多次访问相同查询结果的情况使用 mysqli_fetch_array() 函数。然而,尝试在同一个结果集中多次使用 mysqli_fetch_array() 将导致空输出。这是因为 mysq...
    编程 发布于2024-11-19
  • PHP 中的 Elvis 运算符是什么以及它如何工作?
    PHP 中的 Elvis 运算符是什么以及它如何工作?
    驯服 PHP 中的 Elvis 运算符 (?:)神秘的 ?: 运算符为一些 PHP 代码增色不少,让您感到困惑。这篇简明的文章深入探讨了其神秘的本质,揭示了其真正的目的。揭开 ?: 运算符?: 运算符,也称为“Elvis 运算符, " 功能类似于三元运算符。然而,它的独特之处在于没有一个表...
    编程 发布于2024-11-19

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3