pymysql动态查询结果
如果程序需要检查数据库中的某个动态的数据,只有当这个数据满足条件时才会继续执行代码。
比如需要实现的功能如下:
def check_status():
status = 数据库查询结果 # 初始化当前的status值
while status != 条件:
status = 数据库查询结果 # 如果不满足条件则持续获取该结果
sleep(1)
# 满足条件后需要执行的代码
pymysql代码如下:
conn = pymysql.connect()
def get_status():
query = sql查询语句
cursor = conn.cursor()
cursor.execute(query)
result = list(cursor.fetchall())
return result
如果进入了while循环之后,数据库中的内容已经满足了终止循环的条件,但程序依旧在执行,如果在循环中打印status变量,其值也没有随着数据库内数据的改变而发生改变。
此时需要在cursor.execute()
执行之后添加一句conn.commit()
来提交。
添加commit后,while循环便可成功在status满足条件时停止。