[python] SQLAlchemy에서 데이터베이스 테이블 조회하기

SQLAlchemy는 인기있는 파이썬 ORM(Object-Relational Mapping) 라이브러리입니다. SQLAlchemy를 사용하면 데이터베이스와 상호작용하는 코드를 더욱 쉽게 작성할 수 있습니다. 이번 블로그 포스트에서는 SQLAlchemy를 사용하여 데이터베이스 테이블을 조회하는 방법에 대해 알아보겠습니다.

SQLAlchemy 설치하기

먼저 SQLAlchemy를 설치해야 합니다. 아래 명령을 사용하여 pip를 통해 SQLAlchemy를 설치할 수 있습니다.

pip install SQLAlchemy

데이터베이스 연결 설정하기

데이터베이스에 연결하기 위해서는 SQLAlchemy에서 제공하는 create_engine 함수를 사용해야 합니다. 예를 들어, MySQL 데이터베이스에 연결하려면 다음과 같이 코드를 작성할 수 있습니다.

from sqlalchemy import create_engine

# MySQL 데이터베이스에 연결
engine = create_engine("mysql+pymysql://<사용자명>:<비밀번호>@<호스트>/<데이터베이스>")

데이터베이스 테이블 조회하기

데이터베이스 테이블을 조회하기 위해서는 SQLAlchemy의 Table 클래스와 select 함수를 사용해야 합니다. 다음은 users 테이블의 모든 레코드를 조회하는 예제입니다.

from sqlalchemy import Table, select

# users 테이블 객체 생성
users = Table("users", metadata, autoload=True, autoload_with=engine)

# 모든 레코드 조회
select_query = select([users])
result = engine.execute(select_query)

for row in result:
    print(row)

Table 클래스는 SQLAlchemy 모델과 데이터베이스 테이블 간의 매핑을 담당합니다. users 테이블을 Table 객체로 생성한 후 select 함수를 사용하여 모든 레코드를 조회하는 SQL 쿼리를 생성합니다. 이후 engine.execute 함수를 사용하여 쿼리를 실행하고 결과를 받아옵니다. 이후 for 루프를 사용하여 결과를 출력합니다.

추가적인 작업

위의 예제는 SQLAlchemy를 사용하여 데이터베이스 테이블을 조회하는 간단한 방법을 소개했습니다. 이 외에도 SQLAlchemy는 다양한 기능을 제공하므로, 데이터베이스 조인, 필터링, 정렬 등과 같은 추가 작업을 수행할 수 있습니다. SQLAlchemy 문서를 참조하여 더 자세한 정보를 얻을 수 있습니다.

참고 자료

이번 포스트에서는 SQLAlchemy를 사용하여 데이터베이스 테이블을 조회하는 방법에 대해 알아보았습니다. SQLAlchemy를 사용하면 데이터베이스와의 상호작용을 간단하게 처리할 수 있으므로, 프로젝트에서 데이터베이스를 다루는 경우에 유용하게 사용할 수 있습니다.