金字塔 + Sqlalchemy 中的数据库问题

Issues with db in pyramid + Sqlalchemy

我正在 pyramid 中创建一个简单的应用程序。插入数据时出现数据库锁定错误。

sqlalchemy.exc.OperationalError:(sqlite3.OperationalError)数据库被锁定[SQL:'INSERT INTO users (name, email, number) VALUES (?, ?, ?)'][参数:('test','t@t.com', '123654')]

但是第一次插入数据是正确的,第二次就出现这个错误。

知道为什么第二次发生这种情况吗?

这是我的代码:

name = request.params['name']
email = request.params['email']
no = request.params['number']
DBSession.add(User(name, email, no))

# Get the new ID and redirect
users = DBSession.query(User).all()

SQLite 只能处理 1 个并发事务。

您是否尝试过 commit() 在执行 query() 然后 close() 结束会话之前?

name = request.params['name']
email = request.params['email']
no = request.params['number']
DBSession.add(User(name, email, no))

# Commit the transaction if complete
DBSession.commit()

# Get the new ID and redirect
users = DBSession.query(User).all()

# Close the session
DBSession.close()