请问:python3 sqlalchemy query循环查询结果不变 5
在脚本中执行循环操作,在执行过程中手动修改了数据库的记录数,发现脚本查询结果并未改变definit_sqlalchemy(host,database):"""初始化sql...
在脚本中执行循环操作,在执行过程中手动修改了数据库的记录数,发现脚本查询结果并未改变
def init_sqlalchemy(host, database):
"""初始化sqlalchemy"""
url = "mysql+pymysql://root:aware@" + host + "/" + database + "?charset=utf8" # 拼接数据库串
# print(url)
engine = create_engine(url, encoding='utf-8', echo=False) # 创建引擎
DBSession = sessionmaker(bind=engine) # 创建DBSession类型:
session = DBSession() # 创建session对象:
return session
session = init_sqlalchemy("localhost", "awaredb")
for i in range(10):
print(session.query(T_clips).count())
time.sleep(10) 展开
def init_sqlalchemy(host, database):
"""初始化sqlalchemy"""
url = "mysql+pymysql://root:aware@" + host + "/" + database + "?charset=utf8" # 拼接数据库串
# print(url)
engine = create_engine(url, encoding='utf-8', echo=False) # 创建引擎
DBSession = sessionmaker(bind=engine) # 创建DBSession类型:
session = DBSession() # 创建session对象:
return session
session = init_sqlalchemy("localhost", "awaredb")
for i in range(10):
print(session.query(T_clips).count())
time.sleep(10) 展开
展开全部
没用过flask_sqlalchemy,按照你的思路sql应该是这样的, 按创建时间升序查找第一个status=0
select * from taskqueue where status=0 order by create_time asc limit 0, 1
理论上如果你数据表里的status全是0的话,每次应该都会有数据
出现问题的可能是你的orm这里是没有连到指定的库,又或者first这个函数没起到作用
建议你先看看是不是能查到数据
tasks = TaskQueue.query.filter_by(status=0)
print len(tasks)
判定是哪个环节出了问题
select * from taskqueue where status=0 order by create_time asc limit 0, 1
理论上如果你数据表里的status全是0的话,每次应该都会有数据
出现问题的可能是你的orm这里是没有连到指定的库,又或者first这个函数没起到作用
建议你先看看是不是能查到数据
tasks = TaskQueue.query.filter_by(status=0)
print len(tasks)
判定是哪个环节出了问题
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询