Python

15 Apr 2025

(python) SQLAlchemy 알아보기 (3) Connection과 Session

지금까지 sqlalchemy의 core layer에 대해 공부했고, 이제는 orm layer에 대해 알아보자. SQLAlchemy를 이용한 application을 다루게 된다면 가장 많이 접할 것이다.

Session #

session은 sqlalchemy 객체로, DBMS와 ORM수준으로 상호작용하고 트랜잭션을 관리하기 위한 객체이다.

생성하는 방법으로는 두가지가 있는데, 모두 Engine 인스턴스가 필요하다.

  1. Session(Engine)

  2. sessionmaker(bind=Engine)()

    sessionmaker는 Session을 생성하기 위한 factory이며 호출시 session을 생성해준다. Engine처럼 보통 DB당 하나씩만 있으면 된다.

주의할 점으로는 Session 객체가 생성되었다고 해서 connection이 할당된 것은 아니라는 점이다. 다음 코드를 interactive mode로 실행해보자!

3 Apr 2025

(python) SQLAlchemy 알아보기 (2) Engine

engine / 생성(create_engine) / 주요 파라미터 / connect() / begin() / dispose()

18 Mar 2025

(python) SQLAlchemy 알아보기 (1) Dialect & Pool (connection pooling)

overview / core / dialect / connection pooling

10 Dec 2024

(python) DB API (PEP249)와 구현체들 (sqlite3, pymysql, mysqlclient)

DB API (PEP 249) / 주요 구현체 (Drivers)

19 Sep 2024

(setting) 맥북 초기 설정 기록하기 (homebrew, zsh, powerlevel10k, python)

homebrew / 터미널 관련 / 간단한 개발환경 세팅 /기타 맥북 설정

18 Aug 2024

어플리케이션이 웹 어플리케이션이 되는 방법(feat. cgi, wsgi, servlet)

우리가 작성한 어플리케이션(혹은 code/script)은 어떻게 HTTP 요청에 응답할 수 있을까?

13 Aug 2024

(python) poetry 입문과 사용법 (2)

pyenv와 조합 /poetry 기반 프로젝트 개발하기 / dependency-group

12 Aug 2024

(python) poetry 입문과 사용법 (1)

종속성 관리의 필요성 / poetry의 등장 / 주요 명령어 정리 / lock 파일