准备好的语句可以使用多长时间?
How long can prepared statements be used?
准备好的语句可以使用多长时间有任何时间限制吗?
在循环外准备一个语句,然后从循环内调用 execute()
比在每个循环中准备它提供了巨大的性能提升。但是,如果循环 运行 一两个小时怎么办?早就准备好的声明还能用吗?
如果你在循环中查询它,它应该 运行 无限期地,否则,如果你正在等待某个事件(即工人),它由 wait_timout
决定。您应该捕获任何查询错误,例如 CR_SERVER_GONE
并重试您的连接。
准备好的语句的生命周期保证持续给定的会话。
因此,如果您的会话持续一个小时,则准备好的陈述将在该小时内有效。
以下语句摘自此link:
Normally, a prepared statement is associated with a single database connection. When the connection is closed, the preparedstatement is discarded.
那里的关键词是"normally"。如果您想阅读有关例外情况的信息,请遵循 link.
准备好的语句可以使用多长时间有任何时间限制吗?
在循环外准备一个语句,然后从循环内调用 execute()
比在每个循环中准备它提供了巨大的性能提升。但是,如果循环 运行 一两个小时怎么办?早就准备好的声明还能用吗?
如果你在循环中查询它,它应该 运行 无限期地,否则,如果你正在等待某个事件(即工人),它由 wait_timout
决定。您应该捕获任何查询错误,例如 CR_SERVER_GONE
并重试您的连接。
准备好的语句的生命周期保证持续给定的会话。 因此,如果您的会话持续一个小时,则准备好的陈述将在该小时内有效。
以下语句摘自此link:
Normally, a prepared statement is associated with a single database connection. When the connection is closed, the preparedstatement is discarded.
那里的关键词是"normally"。如果您想阅读有关例外情况的信息,请遵循 link.