第一次连库要明白,不同数据库用到的jdbc驱动是不一样的,下面是两个数据库驱动的下载地址,供参考
MySQLJdbc Downloads:MySQL Community Downloads
https://dev.mysql.com/downloads/connector/j/
SQLSeverJdbc Downloads:Microsoft SQL Server
https://www.microsoft.com/zh-CN/download/details.aspx?id=29066
java连接SQLSever或MySql时出现java.sql.SQLException: No suitable driver要考虑:
1:连接URL格式出现了问题
SqlSever:Connection conn = DriverManager.getConnection
("jdbc:sqlserver://localhost:1433; DatabaseName=basiclibrary",userName,userPwd);
MySql:Connection conn = DriverManager.getConnection
("jdbc:mysql://localhost:3306/Stu","***","***");
2:驱动字符串出错("com.microsoft.sqlserver.jdbc.SQLServerDriver")(com.mysql.jdbc.Driver)
3: library中没有加入合适的mysql_jdbc驱动
下面贴出两个成功连库的代码,供参考:
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
//Jdbc连接sqlsever示例
public class JdbcTestSqlSever {
public static void main(String[] args) throws Exception {
String userName = "***"; //用户名
String userPwd = "***"; //密码
//1.注册驱动
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
//2.创建一个连接对象
Connection conn = DriverManager.getConnection
("jdbc:sqlserver://localhost:1433; DatabaseName=basiclibrary",userName,userPwd);
//3.创建一个sql语句的发送命令对象
Statement stmt = conn.createStatement();
//4.执行sql
//5.拿到查询的结构集对象
ResultSet rs = stmt.executeQuery("select * from Student");
//6.输出结果集的数据
while(rs.next()){
System.out.println(rs.getInt("Sno")+":"+rs.getString("Sname"));
}
//7.关闭连接,命令对象,结果集
rs.close();
stmt.close();
conn.close();
}
}
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class JdbcTestMysql {
//Jdbc连接MySql示例
public static void main(String[] args) throws Exception {
//1.注册驱动
Class.forName("com.mysql.jdbc.Driver");
//2.创建一个连接对象
Connection conn = DriverManager.getConnection
("jdbc:mysql://localhost:3306/Stu","***","***");//用户名和密码
//3.创建一个sql语句的发送命令对象
Statement stmt = conn.createStatement();
//4.执行sql
//5.拿到查询的结构集对象
ResultSet rs = stmt.executeQuery("select * from Student");
//6.输出结果集的数据
while(rs.next()){
System.out.println(rs.getInt("Sno")+":"+rs.getString("Sname"));
}
//7.关闭连接,命令对象,结果集
rs.close();
stmt.close();
conn.close();
}
}