我使用flask来构建一个简单的Web应用程序,但无论出于何种原因,conn.commit()都没有将数据提交到数据库中。我知道这一点,因为当我手动向数据库添加内容时,数据不会改变,但每次测试时ID部分都会增加(因为它使用自动增量)。所以基本上我当前的表有ID 1,用户名测试,密码测试和我手动插入的下一个条目(在尝试使用我的应用程序后)是ID 5,用户名等等,密码等等。是否有任何特定原因使提交无效?
编辑:我不得不将cursor = mysql.connect()。cursor()更改为conn.cursor()
@app.route('/add_data/')
def add_tv_to_database():
conn = mysql.connect()
cursor = mysql.connect().cursor()
cursor.execute("INSERT INTO _accounts VALUES (null, 'test','test')")
conn.commit()
return render_template('index.html')
答案 0 :(得分:2)
在代码的第四行中,将其从cursor = mysql.connect().cursor()
更改为cursor = conn.cursor()
。这将确保游标使用现有的数据库连接(来自前一行代码),而不是创建新的MySQL连接。