본문 바로가기

Utils

엑셀에 데이터 입력하기 - DB 명세서 엑셀 자동화 (3) | Python

엑셀에 데이터 입력하기 - DB 명세서 엑셀 자동화 (3) ❘ Python

 

파이썬으로 DB 명세서 엑셀 자동화하기 (3) - 엑셀에 데이터 입력하기

획득한 데이터들을 엑셀에 입력합니다.


라이브러리

파이썬에서 엑셀 파일에 접근하여 작업할 수 있게 해주는 라이브러리를 설치합니다.

pip install openpyxl

엑셀 파일 생성

엑셀 파일을 생성하고 작업할 시트를 선택합니다.

from openpyxl import Workbook

wb = Workbook()		# 신규 엑셀파일 생성
sheet = wb.active	# 활성 시트

 

데이터 입력

실제로 엑셀에 데이터를 입력해봅시다.

데이터는 행 단위로 각 셀에 입력될 데이터를 배열로 전달합니다.

이렇게 데이터를 입력한다면,

테이블명 테이블스페이스

이렇게 배열로 전달합니다.

["테이블명", "테이블스페이스"]

 

저는 이렇게 입력해보려고 합니다.

결과 샘플

활성 시트에 순서대로 행을 append 합니다.

👇 DB에서 데이터 조회하기

테이블, 컬럼 정보 조회하기 - DB 명세서 엑셀 자동화 (2) | Python

# 제목
sheet.append(["테이블정의서"])

# 테이블정보
sheet.append(["테이블명", table_info.table_name, "테이블스페이스", table_info.table_space])

# 컬럼 정보
sheet.append(["번호", "컬럼명", "설명", "타입", "길이", "NULL", "KEY", "기본값"])

# 컬럼 정보는 배열이므로 루프에서 실행합니다.
i = 0
for c in column_list:
	i += 1
	# 각 DBMS 조회값에 맞는 key로 접근하세요
    sheet.append([
    	i,
        c["COLUMN_NAME"],
        c["COL_COMMENTS"], 
        c["DATA_TYPE"], 
        c["DATA_LENGTH"], 
        c["NULLABLE"], 
        c["KEY_TYPE"],
        c["DATA_DEFAULT"],
   	])

파일 저장

데이터를 모두 입력했다면 저장할 절대 경로, 파일명, 확장자까지 모두 입력하여 저장합니다.

절대 경로가 없으면 현재 위치에 저장됩니다!
sheet.save("excel_db.xlsx")

 

 

 

728x90