java.sql.SQLException: No suitable driver
找了N久未解決,在群裡經過幾個牛人們指點終于搞點,現總結如下
1 驅動包用的不對
2 連接配接串的寫法不同于2000
//JDBC for SQL server 2000寫法:
String DBDRIVER = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
//JDBC for SQL server 2005寫法:
String DBDRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
2003 寫法
access.url=jdbc:microsoft:sqlserver://192.168.1.136:1433;DatabaseName=GameDB
2005 寫法
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=dbName";
附用的配置檔案(2005)
-------------
drivers=com.microsoft.sqlserver.jdbc.SQLServerDriver
logfile=./logs/dblog.txt
access.maxconn=50
access.url=jdbc:sqlserver://192.168.1.136:1433;DatabaseName=Game23DB
access.user=sa
access.password=hujie
-------附屬性檔案建立及dbcontect-----
用配置檔案連接配接資料庫
1. Eclipse中,在src目錄下建立db.properties檔案,在裡面配置資料庫連接配接所需的 Driver,url,user,possword ,注意等号左右不能空格
如:
driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
url=jdbc:sqlserver://localhost:1433;databaseName=restrant
user=sa
password=110 2.寫一個資料庫連接配接類
import java.io.IOException;
import java.sql.*;
import java.util.Properties; public Connection getCon() {
Connection con = null;
Properties properties = new Properties();
try {
properties.load(this.getClass().getResourceAsStream(
"/db.properties"));
String driver = properties.getProperty("driver");
String url = properties.getProperty("url");
String user = properties.getProperty("user");
String password = properties.getProperty("password"); try {
Class.forName(driver);
con = DriverManager.getConnection(url, user, password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
sql 2000 需要引用三個jar包 msbase.jar,mssqlserver.jar,msutil.jar
sql 2005 需要引用一個jar包 sqljdbc.jar