数据库操作完成后需要关闭么,数据库操作完成关闭,每次操作数据库的时候需要
数据库操作完成后需要关闭么,数据库操作完成关闭,每次操作数据库的时候需要
每次操作数据库的时候需要关闭么? 会不会自动关闭,还是自己关闭,哪种方式好
如果本次的rs不能关闭,需要交给下一段程序方法使用,建议一定要在交给的下一段程序使用完成之后立即关闭rs,connection。否则,数据库资源一直被占用,这样的话,你考虑过数据库的感受么。。。
一般来说这个问题通过库解决,开发者只需要根据调用库的规范操作即可,例如sqlalchemy。如果框架/库明确提供了关闭操作,那么请调用——一般来说是通过继承或其他抽象方式与基础框架(例如web框架)绑定,不需要每次和数据库交互自己写关闭代码。最后你得知道,连接数据库其实是一个代价很高的操作,所以实际上不可能针对每个请求连接关闭数据库。这时候框架或库提供的所谓“关闭”操作准确来说应该是“回收”,通常是回收到一个连接池,然后可以供给其他进程/线程调用。1 每次都需要关闭
2 超时之后大部分DBMS (以及其SDK)都会在TCP层面上断开客户端.
3 一定养成手动关闭(手动指的是显式地调用关闭的方法,当然你可以自己写个自动化的封装来调用关闭,或者某些SDK里封装好了的关闭)的习惯,这个不是好习惯坏习惯的问题,而是必须做到的.
因为数据库资源是宝贵的(连接数是宝贵的) 如果你没有关闭,等待自动释放可能会非常长时间,这个时间里其他线程\进程将无法使用这个连接资源. 如果到处没有关闭, 那么很容易若干次操作以后用光连接数.(很多"大型"数据库的连接数也不过就是10-20)
用with statement
http://docs.python.org/2/reference/co...
编橙之家文章,
相关内容
- python 3.6 list(map())相关回答,python3.6,map(lambda x
- Win平台Python cmd实现自动化输入Y/N思路,pythoncmd,WARNING
- 在python3.X下用map同zip能做出一样源码效果吗?,python
- python元组格式化成字符串遇到typeError问题,pythontypeer
- MAC下python2.7.8 IDLE运行返回效果的问题,python2.7.8idle,并
- 自己动手写python爬虫,参考什么学习资料适合,python爬虫
- transform: rotate样式失效了,transformrotate,DOM结构 <u
- 类似美元$这个符号pyCharm2.0里怎么输入不好用呢,美元
- python报错提示输出的疑问,python报输出疑问,类似这样的
- Python源码中爬虫没效果问题出在哪里,python爬虫,item.
评论关闭