除非你去数据库kill那个正在活动中的session。但是你根本就犯不着这样做也不能这样做,如果在一个程序中出现这样的需求那简直是无稽之谈。

解决方案 »

  1.   

    存储过程是在数据库上运行的,跟你的程序无关。你 connection.close() 只是把当前程序和数据库服务器之间的链接关了,并不能影响到存储过程的。相反,如果存储过程正在运行中,你的 connection.close() 可能还会一直等等它结束。
      

  2.   

    to wingtrace
    感谢你的意见。
    实际业务中会有这种需求,一个清理线程专门负责清除耗费资源的操作,例如长时间执行的过程,语句,没有关闭的连接等等。
      

  3.   

    to jamesfancy
    感谢你的意见。
    执行中的sql语句是可以使用connection.close()关掉的,这和执行中的存储过程有什么区别?