오라클 6

[파이썬] 오라클 DB에 execute를 사용해서 1차원 List 데이터를 INSERT

[파이썬] 오라클 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 INSERT 쿼리문을 수정해서 사용하면 된다. execute 함수는 2번째 인자로 1차원 리스트를 넣어야 한다. 데이터가 많으면(행의 수가 많으면) execute로 for문을 여러 번 돌려야 하기 때문에 오래 걸린다. 그래서 한 번에 데이터를 많이..

[파이썬] 오라클 DB에 execute()로 SELECT, INSERT, DELETE 실행하기

INSERT 쿼리문을 수정해서 사용하면 된다. INSERT문 VALUES 에는 왼쪽 그림처럼 컬럼 수만큼 :숫자 형식으로 넣어야 한다. execute 함수는 2번째 인자로 1차원 리스트를 넣어야 한다. 데이터가 많으면 executemany 함수로 2차원 리스트를 넣는 방식이 있다. DBeaver로 오라클을 연결해서 TEST 테이블을 미리 만들었다. SELECT 쿼리문을 수정해서 사용하면 된다. SELECT문 실행 후에 fetchall 함수를 실행해서 데이터를 가져온다. * 참고사항 2차원은 리스트로 되어 있고 1차원은 튜플로 되어 있다. DELETE문 사용법

[파이썬] 오라클 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 # DBeaver 기준으로 'user명/비밀번호@ip주소:port번호/Service Name( hansol94.tistory.com 오라클을 연결해서 csv 파일에 있는 데이터를 리스트에 담아서 INSERT문으로 데이터를 넣으려는 작업을 하는데, execute를 사용해서 하려고 하니 csv 파일의 데이터 행의 수가 적을 때는 상관이 없었는데 몇 천,만 줄이 되면 for문 돌리는 횟수도 이에 비례하니 오래 걸렸다. 비효율적인거 같아서 찾아보니 2차원 리..

[파이썬] 오라클 DB 연결하고 cursor 얻기

우선 DBeaver 툴을 사용해서 오라클로 스키마를 생성한 후에 아래 코드를 실행하면 된다. connect로 DB를 연결하면 cursor 객체를 얻을 수 있다. 항상 커서를 얻거나 DB를 연결했으면 마지막에 close로 닫아줘야 한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import cx_Oracle # DBeaver 기준으로 'user명/비밀번호@ip주소:port번호/Service Name(=DB명) db_connect = 'KOSMES_API/1234@localhost:1521/XE' conn_str = db_connect # 오라클 DB 연결 정보 conn = None curs = None try: conn = cx_Oracle.connect(conn_s..

[오라클] null 조인하면 조인이 되지 않는다

실행 결과로 STD_YR가 null인 행은 조인되지 않는다. STD_YR가 null인 행은 조인되지 않는다. 특정 컬럼을 조인 조건으로 할 때 그 컬럼 값 중에 null이 있는지 먼저 확인해서 데이터 누락이 생기지 않게 한다. 만약 null 값이 있으면 NVL 함수 같은 걸로 null 값 대신 다른 값으로 대체 하는 방법이 있다. NVL(컬럼,0) = NVL(컬럼,0) 이런 식으로 처리한다. NVL(컬럼명,0) : 컬럼명의 값이 NULL이면 0으로 대체한다. -> 컬럼값 자체가 바뀌는 것은 아니다.

DBeaver에서 오라클 연결 오류 해결 방법 ORA-12514

DBeaver에서 오라클 연결하려고 할 경우 이런 에러를 접한 경우가 있다. 이런 에러가 뜨는건 2가지 원인이 있었다. 1. Database 이름을 잘못 입력한 경우 대부분의 블로그를 보면 orcl 을 Database 입력란에 입력하는 포스팅이 많아서 나도 따라서 orcl이라고 입력했는데 이것 때문에 에러가 났었다. 내가 설치한 오라클은 XE(Express Edition) 버전이기 때문에 XE를 입력해야한다. Username 입력란에는 본인이 생성한 이름을 입력해도 된다. test 연결을 하면 연결이 성공된다. 2. 리스너 설정 파일이 잘못된 경우 1번 문제가 아닌 다른 경우는 리스너 파일의 설정에서 일부를 수정해야한다. listener.ora와 tnsnames.ora 파일의 HOST 부분을 무슨 이유로..