java.sql.SQLException: No suitable driver found for jdbc:microsoft://127.0.0.1433;databaseName=spdb1
代碼已加載 com.microsoft.jdbc.sqlserver.SQLServerDriver,JAR 亦已導入。
sqljdbc4.jar(或 mssql-jdbc 新版)。java -cp .;sqljdbc4.jar MyClass 或 Manifest Class-Path。D:\我的項目\lib\ 導致 ClassLoader 解析失敗。移至純 ASCII 路徑。sqljdbc.jar,導致 DriverManager 註冊錯誤驅動。用 mvn dependency:tree 或 IDE 依賴分析排查。127.0.0.1433 缺少冒號,正確為 jdbc:sqlserver://127.0.0.1:1433;databaseName=spdb1(新驅動)或 jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=spdb1(舊驅動)。// 1. 驗證驅動類可被加載
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 新驅動類名
System.out.println("Driver loaded");
// 2. 打印已註冊驅動
Enumeration<Driver> drivers = DriverManager.getDrivers();
while (drivers.hasMoreElements()) {
System.out.println(drivers.nextElement().getClass().getName());
}
// 3. 測試連接
try (Connection c = DriverManager.getConnection(url, user, pwd)) {
System.out.println("Connected: " + c.getMetaData().getURL());
}
com.microsoft.sqlserver:mssql-jdbc:12.2.0.jre11。driverClassName 顯式指定驅動。encrypt=true;trustServerCertificate=false。