使用SQLAlchemy和SQLite进行数据库操作的例子

from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base

# 创建SQLite数据库引擎
engine = create_engine('sqlite:///example.db', echo=True)

# 创建会话工厂
Session = sessionmaker(bind=engine)
session = Session()

# 创建基础模型类
Base = declarative_base()

# 创建数据表模型
class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    name = Column(String(50), nullable=False)
    email = Column(String(100), nullable=False)

# 创建数据表
Base.metadata.create_all(engine)

# 插入数据
new_user = User(name='Alice', email='alice@example.com')
session.add(new_user)
session.commit()

# 查询数据
users = session.query(User).all()
for user in users:
    print(user.name, user.email)

# 更新数据
user = session.query(User).filter_by(name='Alice').first()
user.email = 'new_email@example.com'
session.commit()

# 删除数据
user = session.query(User).filter_by(name='Alice').first()
session.delete(user)
session.commit()

上述例子中,我们首先创建了一个SQLite数据库引擎,并将其绑定到会话工厂。然后,我们创建了一个基础模型类Base,以及一个名为User的数据表模型类,通过继承Base来定义了数据库表结构。

  1. 在插入数据时,我们创建了一个User对象并将其添加到会话中,然后调用session.commit()进行提交。
  2. 在查询数据时,我们使用session.query(User).all()获取所有用户记录,并通过遍历打印每个用户的姓名和邮箱。
  3. 在更新数据时,我们首先使用session.query(User).filter_by(name='Alice').first()找到要更新的用户记录,然后修改其邮箱字段,并调用session.commit()进行提交。
  4. 在删除数据时,我们首先使用session.query(User).filter_by(name='Alice').first()找到要删除的用户记录,然后调用session.delete(user)将其从会话中删除,并最后调用session.commit()进行提交。

这个例子展示了如何使用SQLAlchemy和SQLite进行数据库操作,你可以根据自己的需求和具体的数据表结构进行适当的调整。请注意,在使用SQLite时,只需指定数据库文件路径即可,无需额外的数据库服务器配置。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
在 Flask 中使用 SQLAlchemy操作 SQLite3库非常简单。下面是一个简单的例子,演示了如何在 Flask 中配置和使用 SQLAlchemy 来连接和操作 SQLite3 数据库。 首先,确保已经安装了 Flask 和 SQLAlchemy,可以使用以下命令来安装它们: ``` pip install flask pip install sqlalchemy ``` 接下来,在你的 Flask 应用程序中创建一个 `app.py` 文件,并添加以下代码: ```python from flask import Flask from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db' # 设置数据库URI db = SQLAlchemy(app) class User(db.Model): id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80), unique=True) def __init__(self, username): self.username = username @app.route('/') def index(): # 创建数据库表 db.create_all() # 添加数据到数据库 user = User('John') db.session.add(user) db.session.commit() # 查询数据 users = User.query.all() usernames = [user.username for user in users] return ', '.join(usernames) if __name__ == '__main__': app.run() ``` 在上面的代码中,我们首先导入了 Flask 和 SQLAlchemy 模块。然后,我们创建了一个 Flask 应用程序并设置了数据库的 URI(在这里我们使用SQLite3 数据库)。接下来,我们创建了一个 `User` 模型类,它表示数据库中的一个表。最后,我们定义了一个路由 `/`,在该路由中我们创建了数据库表并向表中添加了一个用户,然后查询所有用户并返回他们的用户名。 最后,运行应用程序: ``` python app.py ``` Flask 应用程序将运行在本地服务器上(默认地址为 `http://127.0.0.1:5000/`),当你访问该地址时,你将看到数据库中的用户名列表。 这只是一个简单的示例,你可以根据自己的需求来扩展和修改代码。要了解更多关于 Flask 和 SQLAlchemy使用,请参考官方文档。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人工智能教学实践

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值