Oracle🔗
Supported drivers:
dbapi | default | driver | connection class |
---|---|---|---|
cx_Oracle | oracle+cx_Oracle |
cx_Oracle.Connection |
|
oracledb | oracle+oracledb |
oracledb.Connection |
cx_Oracle🔗
cx_Oracle
is the default dbapi driver for Oracle in pydapper.
Installation🔗
pip install pydapper[cx_Oracle]
poetry add pydapper -E cx_Oracle
DSN format🔗
dsn = f"oracle+cx_Oracle://{user}:{password}@{host}:{port}/{servicename}"
dsn = "oracle+cx_Oracle://myuser:mypassword:1521@localhost/myservicename"
dsn = "oracle://myuser:mypassword:1521@localhost/myservicename"
Note
You connect to cx_Oracle
in pydapper using service names
Example - connect
🔗
Please see the cx_Oracle docs for a full description of context manager behavior.
import pydapper
with pydapper.connect("oracle+cx_Oracle://pydapper:pydapper@localhost:1522/pydapper") as commands:
print(type(commands))
# <class 'pydapper.oracle.cx_Oracle.CxOracleCommands'>
print(type(commands.connection))
# <class 'cx_Oracle.Connection'>
with commands.cursor() as raw_cursor:
print(type(raw_cursor))
# <class 'cx_Oracle.Cursor'>
Example - using
🔗
Use pydapper with a cx_Oracle
connection pool.
from cx_Oracle import SessionPool
import pydapper
my_pool = SessionPool(user="pydapper", password="pydapper", dsn="localhost:1522/pydapper")
commands = pydapper.using(my_pool.acquire())
print(type(commands))
# <class 'pydapper.oracle.cx_Oracle.CxOracleCommands'>
print(type(commands.connection))
# <class 'cx_Oracle.Connection'>
my_pool.release(commands.connection)
oracledb🔗
Installation🔗
pip install pydapper[oracledb]
poetry add pydapper -E oracledb
DSN format🔗
dsn = f"oracle+oracledb://{user}:{password}@{host}:{port}/{servicename}"
dsn = "oracle+oracledb://myuser:mypassword:1521@localhost/myservicename"
Note
You connect to oracledb
in pydapper using service names
Example - connect
🔗
Please see the oracledb docs for a full description of context manager behavior.
import pydapper
with pydapper.connect("oracle+oracledb://pydapper:pydapper@localhost:1522/pydapper") as commands:
print(type(commands))
# <class 'pydapper.oracle.oracledb.OracledbCommands'>
print(type(commands.connection))
# <class 'oracledb.Connection'>
with commands.cursor() as raw_cursor:
print(type(raw_cursor))
# <class 'oracledb.Cursor'>
Example - using
🔗
Use pydapper with a oracledb
connection pool.
from oracledb import create_pool
import pydapper
my_pool = create_pool(user="pydapper", password="pydapper", dsn="localhost:1522/pydapper")
commands = pydapper.using(my_pool.acquire())
print(type(commands))
# <class 'pydapper.oracle.oracledb.OracledbCommands'>
print(type(commands.connection))
# <class 'oracledb.Connection'>
my_pool.release(commands.connection)