python-cx_Oracle/samples/tutorial/db_config.py

49 lines
1.6 KiB
Python

#------------------------------------------------------------------------------
# Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
#------------------------------------------------------------------------------
import cx_Oracle
import sys
import os
import getpass
######################################################################
#
# Oracle Client library configuration
#
# On Linux this must be None.
# Instead, the Oracle environment must be set before Python starts.
instant_client_dir = None
# On Windows, if your database is on the same machine, comment these lines out
# and let instant_client_dir be None. Otherwise, set this to your Instant
# Client directory. Note the use of the raw string r"..." so backslashes can
# be used as directory separators.
if sys.platform.startswith("win"):
instant_client_dir = r"c:\oracle\instantclient_19_10"
# On macOS (Intel x86) set the directory to your Instant Client directory
if sys.platform.startswith("darwin"):
instant_client_dir = os.environ.get("HOME")+"/Downloads/instantclient_19_8"
# This can be called at most once per process.
if instant_client_dir is not None:
cx_Oracle.init_oracle_client(lib_dir=instant_client_dir)
######################################################################
#
# Tutorial credentials and connection string.
# Environment variable values are used, if they are defined.
#
user = os.environ.get("PYTHON_USER", "pythonhol")
dsn = os.environ.get("PYTHON_CONNECT_STRING", "localhost/orclpdb1")
pw = os.environ.get("PYTHON_PASSWORD")
if pw is None:
pw = getpass.getpass("Enter password for %s: " % user)