我想将oracledb设置为收件箱,但无法获取语法.这可能吗?
import oracledb
from sqlalchemy import create_engine
import getpass
username = getpass.getuser()
userpwd = getpass.getpass()
dsn="my_server"
# connect to oracle database
connection=oracledb.connect(
user=username,
password=userpwd,
dsn=dsn
)
# create engine
engine = create_engine('oracle+oracledb://', creator=lambda: connection)
这对于连接和传递到例如pandas.read_SQL是成功的.
但我想使用gx:
import great_expectations as gx
context = gx.get_context()
context.sources.add...?
我试图获取连接字符串
cp = oracledb.ConnectParams(user=username, password=userpwd,host=dsn)
conn_string = cp.get_connect_string()
datasource = context.sources.add_sql(
name="my_datasource", connection_string=conn_string
)
但这行不通
TestConnection错误:try 连接到收件箱失败, 以下错误消息:无法创建SQLAlchemy引擎,因为 以下异常:无法从字符串中解析SQLAlchemy URL '(描述=(地址=(PROTOPOL =tcp)(主机=myserver)(PORT=1521)'
有什么 idea 吗?