当我在内存中的 H2 控制台中尝试以下操作时:
create linked table tbl01
('', 'jdbc:oracle:thin:@linkToMyDB.com:port_num:db_name', 'my_userid', 'my_password', 'SCHEMA.TABLE')
我得到java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver
。
我正在使用ojdbc6-12.1.0.2.jar
。我已经将它添加到类路径中:
java -cp /path/to/ojdbc6-12.1.0.2.jar oracle.jdbc.OracleDriver
Oracle 12.1.0.2.0 JDBC 4.0 compiled with JDK6 on Mon_Jun_30_11:28:06_PDT_2014
#Default Connection Properties Resource
#Fri Jun 07 11:17:29 PDT 2019
我无法执行java -cp/path/to/ojdbc6-12.1.0.2.jar oracle.jdbc.driver.OracleDriver
来指向创建链接表的驱动程序
命令正在尝试引用,因为该类缺少 main()
方法。
有没有办法强制第一个命令使用oracle.jdbc.OracleDriver
?我已尝试以下操作并收到相同的错误:
create linked table tbl01
('oracle.jdbc.OracleDriver', 'jdbc:oracle:thin:@linktodb.com:port_num:db_name', 'my_userid', 'my_password', 'SCHEMA.TABLE')
我正在 IntelliJ IDEA 上使用内存数据库尝试连接到远程 Oracle 数据库。
最佳答案
在这种情况下,运行 H2 的都是相关应用程序(iirc IntelliJ 为数据库工具启动单独的 Java 进程),并且您需要确保 Oracle JDBC 驱动程序位于其类路径上。
您可以通过转到 IntelliJ 中的 H2 驱动程序定义(数据库、数据源属性)来完成此操作,并将 Oracle JDBC 驱动程序 jar 添加为自定义 JAR(而不是提供的驱动程序)。
关于java - H2 创建链接表 - 未找到驱动程序类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56499557/