运行python线程可以访问SQLite DB的静态(旧)版本
我以线程的形式运行上述代码。在SQLite数据库中访问SQLAlchemy模型 下面的代码显示了烧瓶路线。这里我设置了数据库表“设置”列“帐号”。在数据库中,值已成功更改,但是在后台运行线程时,无法获取对SQLite db的最新更改运行python线程可以访问SQLite DB的静态(旧)版本,python,database,multithreading,sqlite,python-multithreading,Python,Database,Multithreading,Sqlite,Python Multithreading,我以线程的形式运行上述代码。在SQLite数据库中访问SQLAlchemy模型 下面的代码显示了烧瓶路线。这里我设置了数据库表“设置”列“帐号”。在数据库中,值已成功更改,但是在后台运行线程时,无法获取对SQLite db的最新更改 def maintenance(): while True: settings = Setting.query.filter_by().first() print settings.__dict__ thread.star
def maintenance():
while True:
settings = Setting.query.filter_by().first()
print settings.__dict__
thread.start_new_thread( maintenance, ( ))
我已经在外部测试过,SQLite DB已经更改。它正确地显示了对数据库的更改
@app.route('/dashboard/')
def dashboard():
if session['logged_in'] == False:
return render_template('home.html')
account = Account.query.filter_by(account_number = session['account_number']).first()
setting = Setting.query.filter().first()
setting.account_number = session['account_number']
try:
db.session.commit()
except (sqlalchemy.exc.SQLAlchemyError, sqlalchemy.exc.DBAPIError) as e:
print e
return render_template('dashboard.html', account=account)
python线程是否快照SQLite数据库?如果我设置一个mysql数据库,会有什么不同吗
@app.route('/test')
def test_setup():
settings = Setting.query.filter_by().first()
print settings.__dict__
return ''