[python] 파이썬과 데이터베이스의 접속 및 연결 관리 방법

이번에는 파이썬을 사용하여 데이터베이스에 연결하고 관리하는 방법에 대해 알아보겠습니다.

1. 데이터베이스 연결 모듈 설치

먼저, 데이터베이스에 연결하기 위해 필요한 모듈을 설치해야 합니다. 대부분의 데이터베이스는 별도의 모듈이 필요하며, 예를 들어 MySQL, PostgreSQL, SQLite 등의 데이터베이스에 접속하기 위해서는 각각의 모듈을 설치해야 합니다.

pip install pymysql  # MySQL에 연결하기 위한 모듈
pip install psycopg2  # PostgreSQL에 연결하기 위한 모듈
pip install pysqlite  # SQLite에 연결하기 위한 모듈

2. 데이터베이스 연결

MySQL에 연결

import pymysql

# 데이터베이스 연결
connection = pymysql.connect(host='localhost',
                             user='username',
                             password='password',
                             database='dbname',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)

# 연결 해제
connection.close()

PostgreSQL에 연결

import psycopg2

# 데이터베이스 연결
connection = psycopg2.connect(user="username",
                              password="password",
                              host="localhost",
                              port="5432",
                              database="dbname")

# 연결 해제
connection.close()

SQLite에 연결

import sqlite3

# 데이터베이스 연결
connection = sqlite3.connect('dbname.db')

# 연결 해제
connection.close()

3. 데이터베이스 연결 관리

데이터베이스와의 연결은 사용이 끝난 후 반드시 연결을 해제해야 합니다. 그렇지 않으면 리소스가 누수될 수 있기 때문입니다. 보다 안전한 방법은 with 문을 사용하여 자동으로 연결을 해제하는 것입니다.

import pymysql

# 데이터베이스 연결
with pymysql.connect(host='localhost', user='username', password='password', database='dbname', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor) as connection:
    # 쿼리 수행
    with connection.cursor() as cursor:
        # SQL 쿼리 실행
        sql = "SELECT * FROM table"
        cursor.execute(sql)

이렇게 파이썬을 사용하여 데이터베이스에 안전하게 연결하고 관리하는 방법에 대해 알아보았습니다.

더 많은 정보는 pymysql 공식 문서를 참고하세요.