문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자.
== 개요 == '''python-oracledb'''는 cx_Oracle의 후속 드라이버입니다. 기본값인 '''Thin 모드'''는 Oracle Client(Instant Client) 설치 없이 바로 접속할 수 있어 간단한 자동화 스크립트에 적합합니다. == 준비 사항 == * Python 3.8 이상 * 패키지 설치: <code>pip install oracledb</code> * 접속 정보: 호스트, 포트, 서비스명, 계정 == 본문 == === 1단계 : 접속 === <code>oracledb.connect()</code>에 계정과 DSN(<code>호스트:포트/서비스명</code>)을 넘깁니다. === 2단계 : 쿼리 실행 === <code>with</code> 문을 쓰면 커서와 연결이 자동으로 닫힙니다. 값은 반드시 '''바인드 변수'''로 넘기세요. == 예제 코드 == <syntaxhighlight lang="python"> import oracledb dsn = "dbhost:1521/ORCLPDB" with oracledb.connect(user="scott", password="tiger", dsn=dsn) as conn: print("DB 버전:", conn.version) with conn.cursor() as cur: cur.execute("SELECT ename, sal FROM emp WHERE deptno = :d", d=10) for ename, sal in cur: print(ename, sal) </syntaxhighlight> == 문제 해결 == {| class="wikitable" ! 증상 !! 원인 !! 해결 방법 |- | DPY-6005 / ORA-12541 || 리스너 미기동 또는 포트 차단 || <code>lsnrctl status</code>, 방화벽 확인 |- | ORA-12514 || 서비스명 오류 || <code>lsnrctl services</code>로 서비스명 확인 |- | DPY-3015 || 구버전 DB의 비밀번호 검증자(10G) || 비밀번호 재설정 또는 Thick 모드 사용 |} == 참고 자료 == * [https://python-oracledb.readthedocs.io/ python-oracledb 공식 문서]
문서 저장 미리 보기 차이 보기 취소