在connect.open()之后访问数据库过程中如果发生异常的话,这时候还没有调用connect.close(),所以就会保留一个数据库连接释放不掉,一直占用数据库连接资源,时间长了,占用的数据库连接太多就会导致访问数据库失败,请问应该怎么解决。手工把这个进程kill掉吗?怎么保证不会出现数据库连接泄漏,用try--
catch--finally可以吗?怎么用?
1、 connect.open()
2、 访问数据库
3、 connect.close()
在2处出现异常
try{
}
catch(Exception ex)
{
do you work
}
finaylly
{
connection.Close();
}
用try--catch--finally就可以了,
可以把1、2、放到try里
把3放到finally里就行了。
同意楼上两位