Skip to main content
Oracle Autonomous Database는 머신러닝을 사용하여 데이터베이스 튜닝, 보안, 백업, 업데이트 및 DBA가 전통적으로 수행하던 기타 일상적인 관리 작업을 자동화하는 클라우드 데이터베이스입니다. 이 노트북에서는 Oracle Autonomous Database에서 문서를 로드하는 방법을 다룹니다. 로더는 연결 문자열 또는 tns 구성을 통한 연결을 지원합니다.

사전 요구 사항

  1. python-oracledb 설치: pip install oracledb
    1. python-oracledb 설치하기를 참조하세요.

사용 방법

pip install oracledb
from langchain_community.document_loaders import OracleAutonomousDatabaseLoader
from settings import s
상호 TLS 인증(mTLS)을 사용하는 경우, 연결을 생성하려면 wallet_location과 wallet_password 매개변수가 필요합니다. python-oracledb 문서의 Oracle Cloud Autonomous Databases에 연결하기를 참조하세요.
SQL_QUERY = "select prod_id, time_id from sh.costs fetch first 5 rows only"

doc_loader_1 = OracleAutonomousDatabaseLoader(
    query=SQL_QUERY,
    user=s.USERNAME,
    password=s.PASSWORD,
    schema=s.SCHEMA,
    config_dir=s.CONFIG_DIR,
    wallet_location=s.WALLET_LOCATION,
    wallet_password=s.PASSWORD,
    tns_name=s.TNS_NAME,
)
doc_1 = doc_loader_1.load()

doc_loader_2 = OracleAutonomousDatabaseLoader(
    query=SQL_QUERY,
    user=s.USERNAME,
    password=s.PASSWORD,
    schema=s.SCHEMA,
    connection_string=s.CONNECTION_STRING,
    wallet_location=s.WALLET_LOCATION,
    wallet_password=s.PASSWORD,
)
doc_2 = doc_loader_2.load()
단방향 TLS 인증을 사용하는 경우, 연결을 설정하려면 데이터베이스 자격 증명과 연결 문자열만 필요합니다. 아래 예제는 parameters 인수로 바인드 변수 값을 전달하는 방법도 보여줍니다.
SQL_QUERY = "select channel_id, channel_desc from sh.channels where channel_desc = :1 fetch first 5 rows only"

doc_loader_3 = OracleAutonomousDatabaseLoader(
    query=SQL_QUERY,
    user=s.USERNAME,
    password=s.PASSWORD,
    schema=s.SCHEMA,
    config_dir=s.CONFIG_DIR,
    tns_name=s.TNS_NAME,
    parameters=["Direct Sales"],
)
doc_3 = doc_loader_3.load()

doc_loader_4 = OracleAutonomousDatabaseLoader(
    query=SQL_QUERY,
    user=s.USERNAME,
    password=s.PASSWORD,
    schema=s.SCHEMA,
    connection_string=s.CONNECTION_STRING,
    parameters=["Direct Sales"],
)
doc_4 = doc_loader_4.load()

Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.
I