Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python orm

作者:氵冗氵孚   发布日期:2025-07-07   浏览:99

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

# 创建数据库引擎,这里使用的是SQLite内存数据库
engine = create_engine('sqlite:///:memory:')

# 创建声明基类
Base = declarative_base()

# 定义User类,继承自Base
class User(Base):
    __tablename__ = 'users'  # 表名

    id = Column(Integer, primary_key=True)  # 主键
    name = Column(String)  # 名字字段
    age = Column(Integer)  # 年龄字段

    def __repr__(self):
        return f"<User(name={self.name}, age={self.age})>"

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

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

# 添加新用户
new_user = User(name='Alice', age=30)
session.add(new_user)
session.commit()

# 查询用户
users = session.query(User).all()
print(users)

# 关闭会话
session.close()

解释说明:

  1. 创建数据库引擎create_engine用于创建一个数据库引擎,这里使用的是SQLite内存数据库。
  2. 声明基类declarative_base用于创建一个基类,所有的ORM模型类都继承自这个基类。
  3. 定义模型类User类继承自Base,并定义了表的结构和字段。
  4. 创建表Base.metadata.create_all(engine)用于根据模型类创建对应的数据库表。
  5. 创建会话sessionmaker用于创建一个会话类,Session实例用于与数据库交互。
  6. 添加数据:通过session.add方法添加新记录,并通过session.commit提交事务。
  7. 查询数据:使用session.query进行查询操作。
  8. 关闭会话:完成操作后,记得关闭会话以释放资源。

上一篇:python脚本怎么写

下一篇:python获取时间戳

大家都在看

python时间格式

python ord和chr

python中的yield

python自定义异常

python list.pop

python的for i in range

npm config set python

python代码简单

python读取文件夹

python中turtle

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站