天天看点

Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到

java作业连接数据库,按照步骤配置了ODBC后,开始写连接数据库的代码:

public class OdbcHelper {
	private static String ClassName = "sun.jdbc.odbc.JdbcOdbcDriver";  //JDBC-ODBC驱动名称
	private static String SeverName = "jdbc:odbc:";    //服务器连接格式 +DSN源名称
        private static String Dsn = "myDSN";
	private static String UserName = "aa";
	private static String PassWord = "1234";
	private static Statement stm;
	/**
	 * 不带参构造函数 连接数据库
	 */
	public OdbcHelper() {
		this(Dsn,UserName,PassWord);	
	}
	/**
	 * 带参构造函数
	 * @param dsn  连接的ODBC数据源
	 * @param userName  连接用户名
	 * @param passWord	连接用户密码
	 */
	public OdbcHelper(String dsn,String userName,String passWord) {
		try {
			
			Class.forName(this.ClassName);
			
			Connection sqlConn = DriverManager.getConnection(SeverName + dsn,userName,passWord);
			stm = sqlConn.createStatement();
			if(stm == null){
				JOptionPane.showMessageDialog(null, "错误", "无法正确连接数据库", 0);
			}
			else {
				JOptionPane.showMessageDialog(null, "正确", "正确连接数据库", 0);
			}
		} catch (Exception e) {
			e.printStackTrace();
			JOptionPane.showMessageDialog(null, e.getClass(), "无法正确连接数据库", 0);
		}	
	}
}           

运行结果在catch处捕捉到了错误提示(类)如下:

Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到

搜索原因:

jdk从1.8开始,删除了jdbc-odbc桥,所以odbc的驱动是用不了的,建议重新安装jdk1.7或者更低的版本

emmm,难受

学习学习加油! 

于是我下载了JDBC驱动包:

https://www.microsoft.com/zh-CN/download/details.aspx?id=57175

Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到

解压导包:

解压之后,你可以选择把它合适的地方~

Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到

导包~

项目右键Build Path->Configure Build Path->Libraries->Add External JARs->选中压缩的jar文件->Apply and Close:

!over了 ♪(^∇^*) ~nice

Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到
Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到

改代码>-<

public class OdbcHelper {
	//private static String ClassName = "sun.jdbc.odbc.JdbcOdbcDriver";  //JDBC-ODBC驱动名称
	private static String ClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //JDBC直连驱动
	//private static String SeverName = "jdbc:odbc:";
	private static String SeverName = "jdbc:sqlserver://127.0.0.1:6000;DatabaseName="; //服务器连接格式也要改一下
	//private static String Dsn = "myDSN";  //emmm这个不要了
	private static String DbName = "scores";		//数据库名称
	private static String UserName = "aa";
	private static String PassWord = "1234";
	private static Statement stm;
	/**
	 * 不带参构造函数 连接数据库
	 */
	public OdbcHelper() {
		this(DbName,UserName,PassWord);	
	}
	/**
	 * 带参构造函数
	 * @param dbName  连接的数据库名称
	 * @param userName  连接用户名
	 * @param passWord	连接用户密码
	 */
	public OdbcHelper(String dbName,String userName,String passWord) {
		try {
			Class.forName(OdbcHelper.ClassName);
			Connection sqlConn = DriverManager.getConnection(SeverName + dbName,userName,passWord);
			stm = sqlConn.createStatement();
			if(stm == null){
				JOptionPane.showMessageDialog(null, "错误", "无法正确连接数据库", 0);
			}
			else {
				JOptionPane.showMessageDialog(null, "正确", "正确连接数据库", 0);
			}
		} catch (Exception e) {
			e.printStackTrace();
			JOptionPane.showMessageDialog(null, e.getClass(), "无法正确连接数据库", 0);
		}	
	}
}           

正确了,nice~

Java1.8通过jdbc-odbc桥接数据库 "sun.jdbc.odbc.JdbcOdbcDriver"找不到

睡了睡了。

上一篇: ghujasd

继续阅读