1. Select
sqlalchemy 2.0
스타일의 select
쿼리문
from sqlalchemy import select
select_query = (
select(UserEntity)
.join(
UserRoleEntity, UserEntity.uid == UserRoleEntity.uid
)
.where(UserRoleEntity.role_id == role_id)
.order_by(UserEntity.uid)
)
result = session.execute(select_query)
users = result.scalars().all()
UserEntity
객체를 가져오기 위해 scalars()
사용
result.scalars().all()
: 전체 결과를 가져온다.
result.scalars().first()
: 첫번째 결과를 가져온다.
2. Insert
sqlalchemy 2.0
스타일의 insert
쿼리문
from sqlalchemy import insert
user_to_insert = insert(UserEntity).values(
id=user_map.get('user_id'),
user_name=user_map.get('user_name'),
user_group=user_map.get('user_group')
)
session.execute(user_to_insert)
session.commit()
3. Update
sqlalchemy 2.0
스타일의 update
쿼리문
from sqlalchemy import update
user_to_update = (
update(UserEntity)
.where(UserEntity.id == user_id)
.values(user_name=user_map.get('user_name'))
)
result = self.session.execute(user_to_update)
self.session.commit()
4. Delete
sqlalchemy 2.0
스타일의 delete
쿼리문
from sqlalchemy import delete
user_to_delete = (
delete(UserEntity)
.where(UserEntity.id == user_id)
)
session.execute(user_to_delete)
session.commit()