[파이썬] Psycopg2에서 RealDictCursor 사용

Psycopg2는 Python에서 PostgreSQL 데이터베이스와 상호 작용하는 데 사용되는 인터페이스입니다. RealDictCursor는 Psycopg2에서 제공하는 기능 중 하나로, 쿼리 결과를 딕셔너리 형태로 반환해주는 기능입니다. 이번 포스트에서는 Psycopg2의 RealDictCursor를 사용하는 방법에 대해 알아보려고 합니다.

Psycopg2 설치하기

먼저, Psycopg2를 설치해야 합니다. 아래의 명령을 사용하여 Psycopg2를 설치할 수 있습니다:

pip install psycopg2

예제 코드

다음은 RealDictCursor를 사용하여 PostgreSQL 데이터베이스에서 쿼리를 실행하는 예제 코드입니다:

import psycopg2
from psycopg2.extras import RealDictCursor

# PostgreSQL 데이터베이스 연결
conn = psycopg2.connect(
    host="localhost",
    database="mydatabase",
    user="myuser",
    password="mypassword"
)

# 커서 생성 (RealDictCursor)
cur = conn.cursor(cursor_factory=RealDictCursor)

# 쿼리 실행
cur.execute("SELECT * FROM mytable")

# 결과 가져오기
rows = cur.fetchall()

# 결과 출력
for row in rows:
    print(row)

# 연결 종료
cur.close()
conn.close()

위의 예제 코드에서는 psycopg2 모듈을 불러온 후, RealDictCursor 모듈을 import합니다. 이후, PostgreSQL 데이터베이스에 연결하고, cursor_factory=RealDictCursor를 사용하여 RealDictCursor를 생성합니다. 이제 execute() 함수로 쿼리를 실행하고, fetchall() 함수로 결과를 가져옵니다. 결과는 딕셔너리 형태로 반환되므로, 각각의 행을 이터레이션하여 출력할 수 있습니다.

결론

Psycopg2의 RealDictCursor를 사용하면 PostgreSQL 데이터베이스에서 쿼리 결과를 딕셔너리 형태로 손쉽게 가져올 수 있습니다. 이는 데이터를 더 쉽게 다룰 수 있도록 도와주며, 코드의 가독성을 향상시킵니다. Psycopg2의 다른 기능과 함께 사용하면 보다 강력한 데이터베이스 상호 작용을 구현할 수 있습니다.