我正在尝试使用Python中的cx_Oracle连接到数据库。 这就是我的做法:
connection = cx_Oracle.connect("user", "pass", "service")
我能够使用具有相同凭据的sql developer连接到数据库,但是当我尝试从python连接时会抛出错误:
ORA-12154:TNS:无法解析连接标识符 指定。
我从另一个系统尝试了同样的事情,并且能够使用cx_Oracle
连接到数据库。在两个系统中,TNSNames.ora文件的内容完全相同。
我删除了所有内容并重新安装,希望摆脱我可能第一次遇到的错误,但是我仍然面临着同样的错误。
请让我知道是否有任何方法可以解决此问题。
谢谢。
答案 0 :(得分:0)
您可以尝试使用EZ connect,也可以使用cx_Oracle.makedsn()
来建立连接字符串。如果您提供tnsnames.ora文件的内容,我可以提供更详细的答案。
答案 1 :(得分:0)
我意识到出了什么问题。 数据库使用 LDAP 文件。在SQLNET.ORA文件中,没有提到LDAP,这对我造成了错误。 只需在 SQLNET.ORA 中的 NAMES.DIRECTORY_PATH 中添加 LDAP 即可为我解决此问题。