溫馨提示×

如何在sqlalchemy postgresql中使用JSON

小樊
108
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)

# 創(chuàng)建數(shù)據(jù)庫引擎
engine = create_engine('postgresql://username:password@localhost/database_name')

# 創(chuàng)建表
Base.metadata.create_all(engine)

# 創(chuàng)建會話
Session = sessionmaker(bind=engine)
session = Session()

# 添加數(shù)據(jù)
user = User(name='Alice', data={'age': 30, 'gender': 'female'})
session.add(user)
session.commit()

# 查詢數(shù)據(jù)
user = session.query(User).filter_by(name='Alice').first()
print(user.data)

在這個示例中,我們定義了一個User模型,其中包含一個data字段,類型為JSON。我們可以像使用其他字段一樣對其進行操作。在添加數(shù)據(jù)時,我們可以使用字典作為值傳遞給data字段。在查詢數(shù)據(jù)時,我們可以像訪問字典一樣訪問data字段的值。

0