未找到驱动程序使用jaydebeapi连接到oracle DB

时间:2017-04-03 12:52:51

标签: java python oracle oracle11g jaydebeapi

尝试连接数据库但收到错误:

conn = jaydebeapi.connect('oracle.jdbc.driver.OracleDriver',                                     
                         jdbc:oracle:thin:@mydomain.com:1234:GP1', [ 'user', 'pass'],      
                         'C:\Program Files\Java\jdk1.8.0_121\ojdb6.jar')

给出错误

File "C:\Anaconda2\Lib\site-packages\jpype\_jclass.py", line 55, in JClass
raise _RUNTIMEEXCEPTION.PYEXC("Class %s not found" % name)

java.lang.RuntimeExceptionPyRaisable: java.lang.RuntimeException: Class     
oracle.jdbc.driver.OracleDriver not found

我的JAVA_HOME变量设置为C:\Program Files\Java\jdk1.8.0_121,并且在该目录中我有ojdb6.jar文件,但我认为我没有正确设置正确设置CLASSPATH。我该怎么做?,我该怎么设置它?

已尝试过这里的说明,但认为我做得不对。 https://docs.oracle.com/javase/8/docs/technotes/tools/windows/classpath.html e.g。

set CLASSPATH C:\Program Files\Java\jdk1.8.0_121 但是,当我命令行echo %CLASSPATH%时,它会回来%CLASSPATH%,表明我没有做到这一点? 或者还有其他问题吗?

1 个答案:

答案 0 :(得分:0)

在Windows上,路径中的反斜杠必须被转义,或者您可以使用原始字符串:

conn = jaydebeapi.connect('oracle.jdbc.driver.OracleDriver',                                     
                         jdbc:oracle:thin:@mydomain.com:1234:GP1', [ 'user', 'pass'],      
                         r'C:\Program Files\Java\jdk1.8.0_121\ojdb6.jar')

或者,您可以按照in the JDK docs所述设置环境变量CLASSPATH