我目前正在开发一个 Python 脚本,它使用从 MySQL 数据库中提取的一些数据来做一些事情。为了访问这些数据,我使用了模块MySQLdb。
该模块遵循PEP 249,Python DB API中规定的指南,并涉及创建连接对象和后续游标对象,用于迭代信息。
目前,在我的项目中,每当我需要执行 MySQL 读/写块时,我都会创建一个连接对象,然后在完成后关闭它。但是,我可以轻松地传递连接对象以避免这些重复的打开/关闭。
我的问题是:考虑到安全性、资源管理等,open; read/write; close; repeat for the next read/write;
方法论比open; read/write; pass connection on for the next read/write;
方法好吗?
编辑:更多的上下文。这个特定的 Python 脚本是高度多线程的。复杂的进程/线程环境是否会影响哪种方法更合适?