一、连接数据
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
dbHost = 'postgres://用户名:密码@主机:端口/数据库名'
engine = create_engine(dbHost)
Session = sessionmaker(bind=engine)
session = Session()
二、模型
from sqlalchemy import Column, String, TIMESTAMP
from sqlalchemy.dialects.postgresql import INTEGER, TEXT, VARCHAR
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):__tablename__ = 'auth_user'id = Column(INTEGER, primary_key=True)active = Column(INTEGER)name = Column(TEXT)class Size(Base):__tablename__ = 'master_size'id = Column(INTEGER, primary_key=True)active = Column(INTEGER)size = Column(TEXT)user_id = Column(INTEGER)
三、ORM操作
from sqlalchemy import func
user_objs = session.query(User).filter(func.lower(User.name) == 'jack', User.active == 0)
user_obj = session.query(User).get(5)
user_obj = session.query(User).get({"id": 5, "active": 0})
user_obj = User(name='张三', active=0)
session.add(user_obj)
session.commit()
size_obj = Size(size='XXL', active=0, user_id=user_obj.id)
session.add(size_obj)
session.commit()
user_objs = session.query(User).filter(func.lower(User.name) == 'jack', User.active == 0)
session.delete(user_objs)
session.commit()
user_obj = session.query(User).get({"id": 5, "active": 0})
user_obj.name = '李四'
session.commit()