我正在尝试使用 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
Run Code Online (Sandbox Code Playgroud)
我用以下方法创建引擎:
sqlalchemy.create_engine(connection_string, poolclass = NullPool)
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
详细 ProgrammingError: (ProgrammingError) ('42000', '[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]无法删除数据库“test_db”,因为它当前正在使用中。(3702) (SQLExecDirectW)') '删除数据库 test_db'()
如何强制关闭所有连接?
使用 SQLAlchemy 会话 API 关闭所有连接的当前方法是
from sqlalchemy.orm import close_all_sessions
close_all_sessions()
Run Code Online (Sandbox Code Playgroud)
正如session.close_all()已弃用的那样。
| 归档时间: |
|
| 查看次数: |
5839 次 |
| 最近记录: |