我正在尝试使用 sqlalchemy 删除我的数据库:
def dropDb(self, dbName):
self.closeConnection()
self.selectDb(None)
self.execute("drop database %s" % dbName)
def closeConnection(self):
self._Session.close_all()
self._engine.dispose()
del self._Session
del self._engine
我用以下方法创建引擎:sqlalchemy.create_engine(connection_string, poolclass = NullPool)
但我收到以下错误:Detail ProgrammingError: (ProgrammingError) ('42000', '[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot drop database "test_db" because it is currently in use. (3702) (SQLExecDirectW)') 'drop database test_db' ()
如何强制关闭所有连接?
最佳答案
The current method使用 SQLAlchemy session api 关闭所有连接是
from sqlalchemy.orm import close_all_sessions
close_all_sessions()
如 session.close_all()
已弃用。
关于python - sqlalchemy 关闭所有连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17993416/