java连接数据库出现了问题,弹出的错误是什么问题啊?怎么解决
importjava.sql.*;publicclassassecc{/***@paramargs*/publicstaticvoidmain(String[]args)...
import java.sql.*;
public class assecc {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con;
con=DriverManager.getConnection("jdbc:odbc:stu", "li", "1234");
Statement stmt=con.createStatement();
String sql;
sql="create table student(num int primary key,name char(32),sex char(8),age int,grade int)";
stmt.executeUpdate(sql);
String sql1="insert into student values(1,'张三','男',18,50)";
stmt.executeUpdate(sql1);
String sql2="insert into student values(2,'李二','女',18,90)";
stmt.executeUpdate(sql2);
String sql3="insert into student values(3,'李四','男',18,70)";
stmt.executeUpdate(sql3);
String sql4="insert into student values(4,'王五','女',18,80)";
stmt.executeUpdate(sql4);
String sql5="update student set grade=grade*1.1";
stmt.executeUpdate(sql5);
ResultSet rs=stmt.executeQuery("select*from student order by grade desc");
while(rs.next()){
System.out.println("学号:"+rs.getString("num")+"\t"+
"姓名:"+rs.getString("name")+"\t"+
"性别:"+rs.getString("sex")+"\t"+
"年龄:"+rs.getString("age")+"\t"+
"分数:"+rs.getString("grade"));
}
sql="delete from student where grade<60";
stmt.executeUpdate(sql);
stmt.close();
con.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
java.sql.SQLException: [Microsoft][ODBC Microsoft Access 驱动程序] 不能打开数据库 '(未知的)'。应用程序可能无法识别该数据库,或文件可能损坏。 展开
public class assecc {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con;
con=DriverManager.getConnection("jdbc:odbc:stu", "li", "1234");
Statement stmt=con.createStatement();
String sql;
sql="create table student(num int primary key,name char(32),sex char(8),age int,grade int)";
stmt.executeUpdate(sql);
String sql1="insert into student values(1,'张三','男',18,50)";
stmt.executeUpdate(sql1);
String sql2="insert into student values(2,'李二','女',18,90)";
stmt.executeUpdate(sql2);
String sql3="insert into student values(3,'李四','男',18,70)";
stmt.executeUpdate(sql3);
String sql4="insert into student values(4,'王五','女',18,80)";
stmt.executeUpdate(sql4);
String sql5="update student set grade=grade*1.1";
stmt.executeUpdate(sql5);
ResultSet rs=stmt.executeQuery("select*from student order by grade desc");
while(rs.next()){
System.out.println("学号:"+rs.getString("num")+"\t"+
"姓名:"+rs.getString("name")+"\t"+
"性别:"+rs.getString("sex")+"\t"+
"年龄:"+rs.getString("age")+"\t"+
"分数:"+rs.getString("grade"));
}
sql="delete from student where grade<60";
stmt.executeUpdate(sql);
stmt.close();
con.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
java.sql.SQLException: [Microsoft][ODBC Microsoft Access 驱动程序] 不能打开数据库 '(未知的)'。应用程序可能无法识别该数据库,或文件可能损坏。 展开
3个回答
展开全部
哥们,首先我跟你说两个错误,第一个,可能是数据库的执行对象无法获取正确的连接,其次,你执行的语句是plsql语句,貌似使用执行对象不能执行这个语句,只能执行增删改查。
追问
解决办法呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");这个驱动这里报错!也许是你的odbc配置错误!
试试这个“Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();”我也不知道放到你那能成功吧!
试试这个“Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();”我也不知道放到你那能成功吧!
追问
不行啊!我配置都是和同学的一样!就只有我的不行!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-22
展开全部
64位的系统,要使用ODBC,要安装64位的ODBC。
追问
要自己另外装?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询