Python 如何在cx_oracle.connect中指定服务器上的特定数据库
我必须连接到Oracle服务器,并且只使用服务器上的特定数据库。我有如下登录信息:Python 如何在cx_oracle.connect中指定服务器上的特定数据库,python,oracle,cx-oracle,Python,Oracle,Cx Oracle,我必须连接到Oracle服务器,并且只使用服务器上的特定数据库。我有如下登录信息: hostname = 'xxxxx.yyyy.xxxx.net:1521/{server_name}' user_name= 'user' password = 'password' db_name= 'uuuu' cx_Oracle.connect(user_name, password, hostname) 如何在connect语句的connect语句中指定db_名称 上面允许我查询:select*from
hostname = 'xxxxx.yyyy.xxxx.net:1521/{server_name}'
user_name= 'user'
password = 'password'
db_name= 'uuuu'
cx_Oracle.connect(user_name, password, hostname)
如何在connect语句的connect语句中指定db_名称
上面允许我查询:select*from uu.my_table代码>。那么我如何在连接中指定uuu
,这样我就不必每次都添加
连接字符串末尾的“ocrlpdb1”,这是在dbhost.example.com上运行的数据库的服务名称。我们假设该计算机上的Oracle侦听器使用端口1521(默认值)。在您的示例中,“uuu”似乎是一个架构名称,而不是数据库名称。不能在连接字符串中指定架构名称(以“uu”用户身份登录除外)。但是,一旦连接到数据库,就可以运行该语句
alter session set current_schema = uuuu;
select * from my_table
这将导致该声明
alter session set current_schema = uuuu;
select * from my_table
在“uuu”模式中查找my_table
对象,而不是在当前用户的模式中查找它。或者,您可以为my_table
和其他要引用的“uuu”模式对象创建同义词(public或private)。然后,我可以肯定地确认我同时拥有服务名称和数据库。因为使用发布的设置运行。允许我查询:“选择*uuu.my_表”。那么,我如何在connect中指定'uuu',这样我就不必每次都添加将连接字符串更改为connect(“uuu”,userpwd,…)