개발 공부/파이썬

[파이썬] 오라클 DB에 executemany로 데이터를 분할해서 INSERT

가이윤 2022. 12. 8. 10:28

[파이썬] 오라클 executemany로 2차원 리스트 데이터를 DB에 넣기

 

[파이썬] 오라클 executemany로 2차원 리스트 데이터를 DB에 넣기

[파이썬] 오라클 연결하기 [파이썬] 오라클 연결하기 우선 DBeaver 툴을 사용해서 오라클로 스키마를 생성한 후에 아래 코드를 실행하면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import cx_Oracle # DBeave

hansol94.tistory.com

csv 데이터를 오라클 DB에 INSERT 할 때 한 번에 5만개 이상을 넣으려고 하면 에러가 나기 때문에 executemany의 인자로 넣는 2차원 리스트에 있는 1차원 리스트 수를 5만개 이하로 해서 executemany를 여러 번 실행하는 방식으로 하면 된다.
예를 들어 그림의 경우 2차원 리스트의 1차원 리스트 개수는 5개이다. 이걸 2개씩 나눠서 DB에 넣으려면 그림처럼 코드를 활용하면 된다.

while문 코드를 설명하자면 list_val에 있는 1차원 리스트 2개를 임시 리스트인 list_tmp에 담아서 executemany 를 실행시키는 것이다. list_val 의 인덱스 값을 처음에는 0:2 으로 했으니 인덱스 값 0,1 에 해당하는 1차원 리스트만 가져오고 그 다음에는 시작 인덱스 값을 2로 해서 다음 1차원 리스트를 가져오는 방식인 것이다.