如何设置Jupyter Notebook代码块在前序代码块执行后延迟指定时间运行?
如何让Python延迟执行下一段SQL代码?
你遇到的这个场景很常见——调用第一个SQL存储过程后,数据库后台还在处理任务,但Python会立刻继续执行后续代码。要实现延迟5分钟再运行第二段代码,用Python自带的time模块就能轻松搞定。
解决方案步骤:
- 首先在代码开头导入
time模块; - 在第一段存储过程执行完成后、第二段代码开始前,添加
time.sleep(300)(因为5分钟等于300秒)。
修改后的完整代码:
import time gmd_connection.autocommit=True # create cursor cursor = gmd_connection.cursor() query='EXEC sm.spSecuritiesCreate' cursor.execute(query) # close cursor cursor.close() # 延迟5分钟(300秒) time.sleep(300) # create cursor cursor = gmd_connection.cursor() query='EXEC sm.spSolsteinSecuritiesMap' cursor.execute(query) # close cursor cursor.close() #close connection gmd_connection.close()
补充说明:
time.sleep()接收的参数是秒数,所以要把5分钟换算成300秒传入;- 如果你的存储过程执行时间波动较大,固定延迟可能不是最优解——这种情况下可以考虑通过数据库查询来检查存储过程的执行状态,等它真正完成后再继续执行后续代码。但如果你的需求就是固定延迟5分钟,上面的代码完全能满足要求。
内容的提问来源于stack exchange,提问作者Little L
相关产品推荐
相关产品推荐

