# CSV 읽고 DB에 저장
df = pd.read_csv('직원목록.csv')
df.to_sql('employees', engine, if_exists='append', index=False)
# DB 읽고 엑셀로 저장
df = pd.read_sql("SELECT * FROM employees", conn)
df.to_excel('직원목록.xlsx', index=False)
2. DataFrame이란?
pandas의 핵심 자료구조
행과 열로 이루어진 2차원 표 형태의 데이터 객체
엑셀 시트, DB 테이블과 같은 구조
인덱스
EMPLOYEE_ID
FIRST_NAME
SALARY
DEPARTMENT_ID
0
100
Steven
24000
90
1
101
Neena
17000
90
2
102
Lex
17000
90
3. Oracle 데이터 읽기
1) 기존 방식 vs pandas 비교
# 기존 방식
cursor = conn.cursor()
cursor.execute("SELECT * FROM employees")
rows = cursor.fetchall()
columns = [col[0] for col in cursor.description]
# pandas 방식 — 훨씬 간단
df = pd.read_sql("SELECT * FROM employees", conn)
2) 바인드 변수 사용
df = pd.read_sql(
"SELECT * FROM employees WHERE department_id = :dept_id",
conn,
params={'dept_id': 50}
)