jdbc连接数据库显示找不到类异常0-0

军团长 2013-08-03 05:00:06

package com.i;

import java.sql.*;

public class Test{

public static void main(String[] args){

Connection ct = null;
PreparedStatement ps = null;
ResultSet rs = null;

try{
//加载驱动
Class.forName("com.microsoft.sqlserver.jdbc.SqlServerDriver");
//建立连接
ct = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databaseName=userManageSystemDb","sa","123456");

ps = ct.prepareStatement("SELECT * FROM tb_user");
rs = ps.executeQuery();

while(rs.next()){
int id = rs.getInt("id");
String userName = rs.getString("userName");
String password = rs.getString("password");
int grade = rs.getInt("grade");

System.out.println(id+","+userName+","+password+","+grade);
}

}
catch (Exception e){
e.printStackTrace();
}
finally{
try{
if(rs != null)
rs.close();
if(ps != null)
ps.close();
if(ct != null)
ct.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
}



java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SqlServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:188)
at com.i.Test.main(Test.java:15)

用的是sql server 2008数据库...下的是sqljdbc4.jar驱动包...不知道哪里错了 求帮助啊
...全文
313 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
军团长 2013-08-03
  • 打赏
  • 举报
回复
可以了 数据库端口竟然变成1434了 蛋碎
军团长 2013-08-03
  • 打赏
  • 举报
回复

String url = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=userManageSystemDb";
ct = DriverManager.getConnection(url,"sa","123456");

com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP 连接失败。错误:“Connection refused: connect。请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。
	at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1049)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:833)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:716)
	at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:841)
	at java.sql.DriverManager.getConnection(DriverManager.java:579)
	at java.sql.DriverManager.getConnection(DriverManager.java:221)
	at com.i.Test.main(Test.java:20)
又有错误了 郁闷 再不行就用odbc了 jdbc真麻烦唉
末日哥 2013-08-03
  • 打赏
  • 举报
回复
jdbc:microsoft:sqlserver:改成jdbc:sqlserver:试试
军团长 2013-08-03
  • 打赏
  • 举报
回复
引用 3 楼 haoran_10 的回复:
下的驱动包不对,sqlserver哪个版本?最好去微软官网上下
应该没错吧 我的sql是2008的 应该下哪个?
军团长 2013-08-03
  • 打赏
  • 举报
回复
引用 2 楼 u011325979 的回复:
驱动那里 还可以这样写吧 Class.forName(SQLserverDriver.class.getName());
学习到了 以后就这样写了- -
军团长 2013-08-03
  • 打赏
  • 举报
回复
引用 1 楼 fudongrifdr 的回复:
应该是com.microsoft.sqlserver.jdbc.SQLServerDriver 自己点到JAR里面看看就知道了

java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=userManageSystemDb
	at java.sql.DriverManager.getConnection(DriverManager.java:604)
	at java.sql.DriverManager.getConnection(DriverManager.java:221)
	at com.i.Test.main(Test.java:20)
好吧 又出现问题了- -
haoran_10 2013-08-03
  • 打赏
  • 举报
回复
下的驱动包不对,sqlserver哪个版本?最好去微软官网上下
嘛米嘛米轰 2013-08-03
  • 打赏
  • 举报
回复
驱动那里 还可以这样写吧 Class.forName(SQLserverDriver.class.getName());
末日哥 2013-08-03
  • 打赏
  • 举报
回复
应该是com.microsoft.sqlserver.jdbc.SQLServerDriver 自己点到JAR里面看看就知道了

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧