PostgreSQL DB in Python
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
- Python 개발자 (특히 PostgreSQL과의 연동을 처음 접하는 자)
- 난이도: 초급~중급 (기초 SQL 및 Python 라이브러리 사용 지식 필요)
핵심 요약
- PostgreSQL과 Python 연동은
psycopg2
라이브러리가 주로 사용됨. - 데이터베이스 연결을 위해
psycopg2.connect()
메서드와database
,user
,password
,host
,port
등의 인자 필요. - SQL 쿼리 실행은
cursor().execute()
메서드로 수행되며,fetchone()
,fetchmany()
,fetchall()
로 결과 추출 가능.
섹션별 세부 요약
1. PostgreSQL 기본 개념
- 관계형 데이터베이스로, 테이블 간 관계를 통해 데이터를 저장.
- 예시: PostgreSQL, MySQL, SQLite 등.
- SQL은 관계형 데이터베이스의 핵심 언어로, 데이터 조작 및 관리에 사용.
2. Psycopg2 설치 및 사용
- conda 명령어로 설치:
conda install -c anaconda psycopg2
. - Conda Prompt는 Python 패키지 및 환경 관리에 사용되는 터미널 인터페이스.
3. 데이터베이스 연결 설정
- 연결 인자:
database
,user
,password
,host
,port
(기본값: 5432). - 연결 예시:
```python
conn = psycopg2.connect(database='school_db', user='pytest', host='localhost', password='1234', port=5432)
```
4. SQL 쿼리 실행 및 결과 처리
- 테이블 생성:
cursor().execute("CREATE TABLE ...")
사용. - 데이터 삽입:
INSERT INTO ... VALUES(...)
쿼리 실행. - 데이터 조회:
SELECT * FROM ...
후fetchall()
로 결과 추출. - 커밋 및 연결 종료:
commit()
으로 변경사항 확정,close()
로 자원 해제.
결론
- 실무 팁: 연결 후 반드시
close()
로 리소스 해제하여 메모리 누수 방지. - 예제 코드 참고:
psycopg2.connect()
및cursor().execute()
활용하여 데이터베이스 조작.