python: 如何使用 jdbc 连接到 oracle 数据库
python: how to connect to oracle database using jdbc
能否请您告诉我如何使用 Python/Jython 连接到 Oracle 实例?
完全安装 Jython 后,Oracle 网站 (http://www.oracle.com/technetwork/articles/dsl/mastering-oracle-python-providers-1395759.html) 建议:
您只需确保 ojdbc6.jar 在 CLASSPATH 或 JYTHONPATH 中,以便可以解析连接驱动程序。
我读到在使用 -jar 选项时会忽略 CLASSPATH 环境变量。
所以我喜欢 :
java -classpath /usr/lib/oracle/12.1/client64/lib/ojdbc6.jar -jar jython.jar
from java.sql import DriverManager
db_connection = DriverManager.getConnection("jdbc:oracle:thin:@xxxxx:1521/P1FNTPE", "xxx", "xxx")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
at java.sql.DriverManager.getConnection(DriverManager.java:596)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
java.sql.SQLException: java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@xxxxx:1521/P1FNTPE
请问help/advise我如何解决这个问题?
如问题中所述,JDBC 驱动程序的 JAR 文件的完整路径必须存在于 CLASSPATH 或 JYTHONPATH 环境变量中,以便 Jython 脚本可以找到它。这些变量可以根据所使用的环境 (shell) 以多种方式修改,如 Jata 教程中所述:
在这种特殊情况下,只需添加行
export CLASSPATH=/usr/lib/oracle/12.1/client64/lib/ojdbc6.jar
到其中一个启动文件(例如 ~/.bash_profile、~/.profile、~/.bashrc 等),然后重新登录(或 运行 source
在文件上)是解决方案。
能否请您告诉我如何使用 Python/Jython 连接到 Oracle 实例?
完全安装 Jython 后,Oracle 网站 (http://www.oracle.com/technetwork/articles/dsl/mastering-oracle-python-providers-1395759.html) 建议: 您只需确保 ojdbc6.jar 在 CLASSPATH 或 JYTHONPATH 中,以便可以解析连接驱动程序。
我读到在使用 -jar 选项时会忽略 CLASSPATH 环境变量。 所以我喜欢 :
java -classpath /usr/lib/oracle/12.1/client64/lib/ojdbc6.jar -jar jython.jar
from java.sql import DriverManager
db_connection = DriverManager.getConnection("jdbc:oracle:thin:@xxxxx:1521/P1FNTPE", "xxx", "xxx")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
at java.sql.DriverManager.getConnection(DriverManager.java:596)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
java.sql.SQLException: java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@xxxxx:1521/P1FNTPE
请问help/advise我如何解决这个问题?
如问题中所述,JDBC 驱动程序的 JAR 文件的完整路径必须存在于 CLASSPATH 或 JYTHONPATH 环境变量中,以便 Jython 脚本可以找到它。这些变量可以根据所使用的环境 (shell) 以多种方式修改,如 Jata 教程中所述:
在这种特殊情况下,只需添加行
export CLASSPATH=/usr/lib/oracle/12.1/client64/lib/ojdbc6.jar
到其中一个启动文件(例如 ~/.bash_profile、~/.profile、~/.bashrc 等),然后重新登录(或 运行 source
在文件上)是解决方案。