MySQL和Oracle都是流行的关系型数据库管理系统(RDBMS),它们分别由不同的公司开发,MySQL由Oracle公司(现为MariaDB)维护,而Oracle数据库则由甲骨文公司(Oracle Corporation)维护。这两个数据库系统都提供了用于连接和操作数据库的驱动程序。
原因:可能是没有正确加载驱动程序,或者驱动程序版本与数据库版本不兼容。
解决方法:
Class.forName("com.mysql.jdbc.Driver")
(对于MySQL)或Class.forName("oracle.jdbc.driver.OracleDriver")
(对于Oracle)来加载驱动程序。import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseConnector {
public static void main(String[] args) {
String mysqlUrl = "jdbc:mysql://localhost:3306/mydatabase";
String oracleUrl = "jdbc:oracle:thin:@localhost:1521:orcl";
String username = "user";
String password = "password";
try {
// 加载MySQL驱动
Class.forName("com.mysql.jdbc.Driver");
Connection mysqlConn = DriverManager.getConnection(mysqlUrl, username, password);
System.out.println("Connected to MySQL database!");
// 加载Oracle驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection oracleConn = DriverManager.getConnection(oracleUrl, username, password);
System.out.println("Connected to Oracle database!");
} catch (ClassNotFoundException e) {
System.err.println("Driver not found!");
e.printStackTrace();
} catch (SQLException e) {
System.err.println("Connection failed!");
e.printStackTrace();
}
}
}
请注意,上述代码示例中的驱动类名可能需要根据实际使用的驱动版本进行调整。例如,对于较新的MySQL Connector/J版本,驱动类名可能是com.mysql.cj.jdbc.Driver
。
领取专属 10元无门槛券
手把手带您无忧上云