我試圖創建使用這條巨蟒類的外部文件的SQLite數據庫,但我收到此錯誤信息:一類對象創建從外部文件中的SQLite數據庫
query() takes 2 positional arguments but 3 were given
我認爲我理解了這個問題,但我不知道解決這個問題的方法,有人可以指引我走向正確的方向嗎?
class DatabaseManager:
def __init__(self, db):
self.conn = sqlite3.connect(db)
self.conn.commit()
self.cur = self.conn.cursor()
def query(self, arg):
self.test_setup = open(arg)
self.executescript(test_setup.read())
self.cur.execute(arg)
self.con.commit()
return self.cur
def __del__(self):
self.conn.close()
dbmgr = DatabaseManager("testdb.db")
dbmgr.query('test_setup.sql', 'r')
我不使用「R」?如果我排除它,我會得到更多的錯誤。 '''''''''''''''''''''''''AttributeError:'DatabaseHandler'對象沒有屬性'執行'' – cashmeer
@cashmeer''r''是'open'的默認'mode',所以你不需要明確地給它 - ['execute']( https://docs.python.org/3/library/sqlite3.html#sqlite3.Connection.execute)如果你沒有在你的sql中使用任何參數,就不會使用''r''參數, – MSeifert