본문 바로가기
프로그래밍/Python

파이썬 데이터베이스 연동방법 SQLite,MySQL,PostgreSQL등..

by 코딩랜드 2023. 7. 20.
반응형

파이썬에서의 데이터베이스 연동 방법

목차

  1. SQLite 데이터베이스 연동
  2. MySQL 데이터베이스 연동
  3. PostgreSQL 데이터베이스 연동
  4. Oracle 데이터베이스 연동
  5. MongoDB 데이터베이스 연동
  6. 데이터베이스 연동 시 주의사항

1. SQLite 데이터베이스 연동

파이썬에서 가벼우면서도 편리하게 사용할 수 있는 SQLite 데이터베이스에 연동하는 방법은 다음과 같습니다. SQLite는 별도의 서버 없이 파일 기반의 데이터베이스로, 내장 모듈로 간단히 연동할 수 있습니다.


import sqlite3
데이터베이스 연결
conn = sqlite3.connect('mydatabase.db')

커서 생성
cursor = conn.cursor()

SQL 쿼리 실행 예시
cursor.execute('SELECT * FROM mytable')

결과 가져오기
result = cursor.fetchall()

연결 종료
conn.close()

2. MySQL 데이터베이스 연동

MySQL은 대표적인 관계형 데이터베이스로 파이썬에서 연동하기 위해서는 MySQLdb 또는 PyMySQL 라이브러리를 사용할 수 있습니다.


# MySQLdb를 이용한 연동 방법
import MySQLdb
데이터베이스 연결
conn = MySQLdb.connect(host='localhost', user='username', passwd='password', db='mydatabase')

커서 생성
cursor = conn.cursor()

SQL 쿼리 실행 예시
cursor.execute('SELECT * FROM mytable')

결과 가져오기
result = cursor.fetchall()

연결 종료
conn.close()

3. PostgreSQL 데이터베이스 연동

PostgreSQL은 고성능의 오픈 소스 객체-관계형 데이터베이스 시스템으로, psycopg2 라이브러리를 사용하여 파이썬에서 연동할 수 있습니다.


import psycopg2
데이터베이스 연결
conn = psycopg2.connect(host='localhost', user='username', password='password', dbname='mydatabase')

커서 생성
cursor = conn.cursor()

SQL 쿼리 실행 예시
cursor.execute('SELECT * FROM mytable')

결과 가져오기
result = cursor.fetchall()

연결 종료
conn.close()

4. Oracle 데이터베이스 연동

Oracle 데이터베이스에 연동하기 위해서는 cx_Oracle 라이브러리를 사용합니다. cx_Oracle은 Oracle 데이터베이스 클라이언트 라이브러리와 연동하여 사용해야 합니다.


import cx_Oracle
데이터베이스 연결
conn = cx_Oracle.connect('username/password@localhost:1521/mydatabase')

커서 생성
cursor = conn.cursor()

SQL 쿼리 실행 예시
cursor.execute('SELECT * FROM mytable')

결과 가져오기
result = cursor.fetchall()

연결 종료
conn.close()

5. MongoDB 데이터베이스 연동

NoSQL 데이터베이스인 MongoDB에 연동하기 위해서는 pymongo 라이브러리를 사용합니다.


import pymongo
데이터베이스 연결
client = pymongo.MongoClient('mongodb://localhost:27017/')

데이터베이스 선택
db = client['mydatabase']

컬렉션 선택
collection = db['mycollection']

쿼리 예시
result = collection.find()

결과 출력
for document in result:
print(document)

연결 종료
client.close()

6. 데이터베이스 연동 시 주의사항

- 데이터베이스 연결 후 쿼리를 수행한 뒤, 꼭 연결을 종료해야 합니다. - 사용자 입력값을 쿼리에 바로 사용하지 말고, 파라미터화된 쿼리를 사용하여 SQL 인젝션을 방지해야 합니다. - 데이터베이스 연동 설정 정보는 보안에 민감하므로 환경 변수나 설정 파일 등을 이용하여 관리하는 것이 좋습니다. - 각 데이터베이스에 따라 지원하는 기능과 SQL 문법이 다를 수 있으므로, 공식 문서를 참고하고 적절한 라이브러리를 사용해야 합니다.

이제 파이썬에서 다양한 데이터베이스를 연동하는 방법에 대해 자세히 알아보았습니다. 적절한 라이브러리를 선택하여 데이터베이스와 효율적으로 연동하여 프로젝트를 진행하는데 도움이 되기를 바랍니다.

반응형