关于flask中使用sqlite

对数据库操作了解不多,想在flask应用中使用sqlite
已经建立数据库

链接数据库用的函数为:

def connect_db():
    return sqlite3.connect('/path/to/database.db')

相关请求函数:

@app.before_request
def before_request():
    g.db = connect_db()

@app.teardown_request
def teardown_request(exception):
    if hasattr(g, 'db')
        g.db.close()

如何实现查询,新增,修改等操作?先谢啦~!

阅读 9.7k
2 个回答

简单新增数据和查询数据操作:

with sqlite3.connect(db_filename) as conn:
    cursor = conn.cursor()
    #插入数据
    cursor.execute("""
    insert into test_table (id, username, password)
    values ('user_id', 'my_username', 'my_password')
    """)
    #查找数据
    cursor.execute("""
    select username, password from test_table where id = 'user_id'
    """)

    try:
        username, password = cursor.fetchone()
        print username, password
    except TypeError:
        pass

前提是已经存在test.db并且里面有一个表是test_table

g.db表明就db是一个全局变量,在整个请求过程有效。hasattr 就是判断全局变量g中是否定义了db。具体看看flask手册。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题