应该重用一条语句,还是有限制?
如果有限制,什么时候该关闭它?
创建和关闭语句是一项昂贵的操作吗?
答案 0 :(得分:-1)
创建和关闭语句实际上没有任何意义。我相信您的意思是创建和关闭游标。游标是对结果进行迭代的查询。通常,您会在MySQL的存储过程和函数中看到它们。是的,打开和关闭它们会产生成本,您应该遍历整个集合。
或者,您谈论的是准备好的语句,例如您可能使用PHP中的PDO库创建的语句。在这种情况下,您可以尽可能多地使用它们,实际上应该使用它们,因为这样效率更高。
每次MySQL收到一条语句时,它会将其转换为自己的内部逻辑并创建一个查询计划。使用准备好的语句意味着它只需执行一次,而不必每次调用它。
最后,您可能想询问有关连接的问题,而不是声明。同样,在这种情况下,答案是肯定的-您可以(并且应该)根据需要多次使用它,因为打开它会对性能产生重大影响。尽管您不希望打开它的时间超过您的需要,因为MySQL具有可以打开的最大连接数。
希望其中一个能回答您的问题。