0

在我的烧瓶应用程序中,我有以下代码:

def get_db():
    conn =sqlite3.connect(db_path)
    cur =conn.cursor()
    cur.execute("""CREATE TABLE IF NOT EXISTS Files (name TEXT, 
    year TEXT, subject TEXT, kind TEXT, correction INT, 
    description TEXT, date TEXT)""")
    return cur

def query_db(query, args=(), one=False):
    print args   
    cur = get_db().execute(query, args)
    rv = cur.fetchall()
    cur.close()
    return (rv[0] if rv else None) if one else rv

@app.route('/admin/<year>/<matiere>/<fichier>')
@requires_auth
def delete(year, matiere, fichier):
    query_db("DELETE from Files where name=?",[fichier])
    return 'Deleted'

但是当我使用这段代码时,数据并没有被删除,我不明白为什么。有人有想法吗?

4

1 回答 1

1

我认为您缺少提交 conn.commit()

def query_db(query, args=(), one=False):
    print args   
    cur = get_db().execute(query, args)
    rv = cur.fetchall()
    conn.commit()
    cur.close()
    return (rv[0] if rv else None) if one else rv
于 2013-09-21T19:53:35.553 回答