[python] 데이터베이스 예외 처리

데이터베이스를 다루다 보면 예외 처리는 꼭 필요합니다. 예기치 않은 상황이 발생할 수 있기 때문에 이에 대한 처리가 중요합니다. 파이썬에서 데이터베이스를 다룰 때 어떻게 예외 처리를 하는지 살펴보겠습니다.

데이터베이스 연결 및 예외 처리

import psycopg2
from psycopg2 import OperationalError, errors

try:
    conn = psycopg2.connect(
        database="mydb",
        user="myuser",
        password="mypass",
        host="localhost",
        port="5432"
    )
except OperationalError as e:
    print(f"Connection error: {e}")
except errors.SyntaxError as e:
    print(f"Syntax error: {e}")

위 예제 코드에서는 psycopg2 모듈을 사용하여 PostgreSQL 데이터베이스에 연결하는 과정에서 발생할 수 있는 연결 오류와 구문 오류에 대한 예외 처리를 보여줍니다.

데이터베이스 쿼리 및 예외 처리

try:
    with conn.cursor() as cur:
        cur.execute("SELECT * FROM mytable")
except psycopg2.DataError as e:
    print(f"Data error: {e}")
except psycopg2.IntegrityError as e:
    print(f"Integrity error: {e}")
except psycopg2.ProgrammingError as e:
    print(f"Programming error: {e}")

또한, 데이터베이스 쿼리를 실행할 때 발생할 수 있는 데이터 오류, 무결성 오류, 프로그래밍 오류에 대한 예외 처리도 함께 다루었습니다.

데이터베이스를 다룰 때는 다양한 예외 상황을 고려하여 적절한 처리를 하는 것이 중요합니다. 이를 통해 안정적인 데이터베이스 애플리케이션을 개발할 수 있습니다.

참고 문헌: