温馨提示×

如何在sqlalchemy postgresql中使用JSON

小樊
128
2024-07-18 23:01:35
栏目: 云计算

在SQLAlchemy中使用JSON字段非常简单,只需在定义模型时指定字段类型为JSON即可。下面是一个示例:

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

Base = declarative_base()

class User(Base):
    __tablename__ = 'users'
    
    id = Column(Integer, primary_key=True)
    name = Column(String)
    data = Column(JSON)

# 创建数据库引擎
engine = create_engine('postgresql://username:password@localhost/database_name')

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

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

# 添加数据
user = User(name='Alice', data={'age': 30, 'gender': 'female'})
session.add(user)
session.commit()

# 查询数据
user = session.query(User).filter_by(name='Alice').first()
print(user.data)

在这个示例中,我们定义了一个User模型,其中包含一个data字段,类型为JSON。我们可以像使用其他字段一样对其进行操作。在添加数据时,我们可以使用字典作为值传递给data字段。在查询数据时,我们可以像访问字典一样访问data字段的值。

0