Flask数据库和ORM(四)

2023-05-05 16:29:33 浏览数 (1)

查询数据

使用SQLAlchemy,您可以轻松地查询数据库中的数据。例如,以下代码将查询数据库中所有User对象并打印它们的名称:

代码语言:javascript复制
@app.route('/users')
def users():
    users = User.query.all()
    for user in users:
        print(user.name)
    return 'Users retrieved successfully!'

这里,我们使用User.query.all()方法查询数据库中所有的User对象,并使用for循环遍历它们。然后,我们打印每个用户的名称。

添加数据

使用SQLAlchemy,您可以轻松地添加数据到数据库中。例如,以下代码将创建一个新的User对象并将其保存到数据库中:

代码语言:javascript复制
@app.route('/add_user')
def add_user():
    user = User(name='John', email='john@example.com')
    db.session.add(user)
    db.session.commit()
    return 'User added successfully!'

这里,我们创建一个名为John,电子邮件地址为john@example.com的新User对象,并使用db.session.add()方法将其添加到数据库中。然后,我们调用db.session.commit()方法来提交更改。这将保存新的User对象到数据库中。

更新数据

使用SQLAlchemy,您可以轻松地更新数据库中的数据。例如,以下代码将更新数据库中名称为JohnUser对象的电子邮件地址:

代码语言:javascript复制
@app.route('/update_user')
def update_user():
    user = User.query.filter_by(name='John').first()
    user.email = 'new_email@example.com'
    db.session.commit()
    return 'User updated successfully!'

这里,我们首先使用User.query.filter_by(name='John').first()方法查询数据库中名称为John的第一个User对象。然后,我们更新了电子邮件地址并使用db.session.commit()方法将更改保存到数据库中。

删除数据

使用SQLAlchemy,您可以轻松地从数据库中删除数据。例如,以下代码将删除数据库中名称为JohnUser对象:

代码语言:javascript复制
@app.route('/delete_user')
def delete_user():
    user = User.query.filter_by(name='John').first()
    db.session.delete(user)
    db.session.commit()
    return 'User deleted successfully!'

这里,我们首先使用User.query.filter_by(name='John').first()方法查询数据库中名称为John的第一个User对象。然后,我们使用db.session.delete()方法将其从数据库中删除,并使用db.session.commit()方法将更改保存到数据库中。

0 人点赞