Python 关闭SQLObject连接

Python 关闭SQLObject连接,python,sqlobject,Python,Sqlobject,打开SQLObject连接后,是否可以手动关闭该连接?我试图删除一个数据库文件,一旦它被使用,但它似乎是开放的连接到数据库文件阻止我这样做 例如: from sqlobject import * import os # Create and open connection to a database file. sqlhub.processConnection = connectionForURI('sqlite:path_to_db') SomeObject.createTable() #

打开SQLObject连接后,是否可以手动关闭该连接?我试图删除一个数据库文件,一旦它被使用,但它似乎是开放的连接到数据库文件阻止我这样做

例如:

from sqlobject import *
import os

# Create and open connection to a database file.
sqlhub.processConnection = connectionForURI('sqlite:path_to_db')
SomeObject.createTable()

# ...

# Delete database when finished.
os.remove('path_to_db')
给出以下错误:

WindowsError: [Error 32] The process cannot access the file because 
              it is being used by another process: 'path_to_db'

似乎只需在数据库连接上调用
.close()
,就可以实现以下目的:

from sqlobject import *
import os

# Create and open connection to a database file.
sqlhub.processConnection = connectionForURI('sqlite:path_to_db')

#do something with connection
pass

#close connection
sqlhub.processConnection.close()

#delete database
os.remove(path_to_db)

我只能在
close
方法中找到一点,但可以公平地说,您可以像对待任何其他
文件
对象一样对待它。不过,我对
sqlobject
没有太多经验,在解释器中,您仍然可以在
processConnection
赋值之后立即删除数据库,而不关闭它,谁知道呢。

似乎只是在数据库连接上调用
.close()
,似乎可以做到以下几点:

from sqlobject import *
import os

# Create and open connection to a database file.
sqlhub.processConnection = connectionForURI('sqlite:path_to_db')

#do something with connection
pass

#close connection
sqlhub.processConnection.close()

#delete database
os.remove(path_to_db)

我只能在
close
方法中找到一点,但可以公平地说,您可以像对待任何其他
文件
对象一样对待它。不过,我对
sqlobject
没有太多经验,在解释器中,您仍然可以在
processConnection
赋值之后立即删除数据库,而不关闭它,所以谁知道呢。

对于我来说,这似乎工作得很好,因此我现在可以处理库实现中的一些模糊性。非常感谢。@JimmidyJoo很乐意帮忙!就我的目的而言,这似乎工作得很好,因此我现在可以处理库实现中的一些模糊之处。非常感谢。@JimmidyJoo很乐意帮忙!