> SQL查询可以被中断吗?>这是sql标准的一部分吗?>如果它不是sql标准的一部分,哪些sql DB允许查询被中断(任何最受欢迎的例子)?>中断数据库查询(sql或不是sql)是否常见,你知道你不再关心结果了? (在我工作的代码库中,它肯定有助于减轻服务器的负载)
sql标准没有提供中断或终止正在运行的查询的方法,但我知道的每个DBMS都实现了KILL命令或类似命令.例如,在MySQL中,用户可以使用SHOW [FULL] PROCESSLIST来查看所有正在运行的查询(及其状态,查询ID等).具有KILL权限的用户可以终止查询.
大多数KILL都会发生,因为查询可能会运行太长时间或阻止其他查询,例如.表缺少索引或磁盘已满.当您不关心结果时(例如,用户取消了网站导航),网络服务器本身通常会中止该过程,从而中止查询(无需手动或程序员交互)