[python] PyMySQL을 이용하여 데이터베이스의 레코드를 삭제하는 방법을 알아본다.

이번 포스트에서는 PyMySQL 라이브러리를 사용하여 데이터베이스의 레코드를 삭제하는 방법에 대해 알아보겠습니다.

PyMySQL이란?

PyMySQL은 Python에서 MySQL 데이터베이스를 사용하는 데 사용되는 라이브러리입니다. 이 라이브러리를 사용하면 Python에서 MySQL 데이터베이스에 연결하고, 쿼리를 실행하며, 데이터를 가져오고, 수정할 수 있습니다.

PyMySQL 설치하기

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

pip install pymysql

데이터베이스 연결

데이터베이스에 연결하기 위해 PyMySQL connect() 메소드를 사용합니다. 다음 코드 예제에서는 호스트, 사용자 이름, 비밀번호, 데이터베이스 이름 등의 정보를 설정하여 데이터베이스에 연결합니다.

import pymysql

conn = pymysql.connect(
    host='hostname',
    user='username',
    password='password',
    database='database_name'
)

레코드 삭제하기

레코드를 삭제하기 위해 SQL DELETE 문을 사용합니다. PyMySQL에서는 execute() 메소드를 사용하여 SQL 문을 실행할 수 있습니다. 아래 코드 예제에서는 DELETE 문을 사용하여 데이터베이스의 특정 테이블에서 레코드를 삭제하는 방법을 보여줍니다.

import pymysql

conn = pymysql.connect(
    host='hostname',
    user='username',
    password='password',
    database='database_name'
)

# 커서 생성
cursor = conn.cursor()

# SQL DELETE 문 실행
sql = "DELETE FROM table_name WHERE condition"
cursor.execute(sql)

# 변경사항 저장
conn.commit()

# 연결 종료
conn.close()

위의 코드 예제에서 table_name은 레코드를 삭제할 테이블의 이름을, condition은 삭제할 레코드를 선택하기 위한 조건을 의미합니다. 이를 적절하게 설정하여 사용하세요.

예외 처리

코드를 작성할 때 예외 처리를 함께 추가하는 것이 좋습니다. PyMySQL에서는 try-except 블록을 사용하여 예외를 처리할 수 있습니다. 아래 코드 예제에서는 예외 처리를 추가한 방법을 보여줍니다.

import pymysql

conn = pymysql.connect(
    host='hostname',
    user='username',
    password='password',
    database='database_name'
)

try:
    # 커서 생성
    cursor = conn.cursor()

    # SQL DELETE 문 실행
    sql = "DELETE FROM table_name WHERE condition"
    cursor.execute(sql)

    # 변경사항 저장
    conn.commit()

except Exception as e:
    print(f"Error occurred: {str(e)}")
    conn.rollback()

finally:
    # 연결 종료
    conn.close()

위의 코드 예제에서 try 블록 내의 코드가 예외를 발생시킬 경우 except 블록이 수행되고, finally 블록은 항상 실행됩니다. except 블록에서는 에러 메시지를 출력하고, rollback() 메소드를 사용하여 변경 사항을 취소합니다.

결론

이번에는 PyMySQL을 사용하여 MySQL 데이터베이스에서 레코드를 삭제하는 방법에 대해 알아보았습니다. PyMySQL을 사용하면 간편하게 데이터베이스에 연결하고, SQL 문을 실행하며, 데이터를 조작할 수 있습니다. 또한 예외 처리를 통해 에러가 발생했을 때 안정적으로 처리할 수 있습니다.

더 많은 PyMySQL 기능과 사용법을 알아보기 위해 공식 문서를 참고하세요.