Java连接Access数据库 疑问

已经设好了ODBCBookPrice用的软件是MyEclipse,运行后没有报错,可是就是不出来结果,我的源文件中有数据,是怎么回事呢,小弟第一次用JAVA连数据库,谢谢... 已经设好了ODBC BookPrice 用的软件是MyEclipse,运行后没有报错, 可是就是不出来结果 ,我的源文件中有数据,是怎么回事呢,小弟第一次用JAVA连数据库,谢谢!
package com.testDB1;
import java.sql.*;

public class dtbs1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String nm,prc;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundException e)
{ }
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:BookPrice");
Statement stmt=con.createStatement();
String sql = "SELECT Name,Price FROM Bookpr" ;
ResultSet rs=stmt.executeQuery(sql);
while (rs.next())
{
nm=rs.getString("Name");
prc=rs.getString("Price");
System.out.println("书名:"+nm);
System.out.println("价格:"+prc);
System.out.println(" ");

}
rs.close();
stmt.close();
con.close();

}catch(Exception e){}
}

}
展开
 我来答
dongmeng0801
2011-03-16 · 超过19用户采纳过TA的回答
知道答主
回答量:86
采纳率:0%
帮助的人:32.6万
展开全部
1. 建立数据库连接,取得Connection对象.例如:
//Oracle8/8i/9i数据库(thin模式)
String url="jdbc:oracle:thin:@localhost:1521:orcl";
String user="scott";
String password="tiger";
Connection conn=DriverManager.getConnection(url,user,password);

//Sql Server7.0/2000数据库
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
String user="sa";
String password="";
Connection conn=DriverManager.getConnection(url,user,password);

//DB2数据库
String url="jdbc:db2://localhost:5000/sample";
String user="amdin"
String password=-"";
Connection conn=DriverManager.getConnection(url,user,password);

//Informix数据库
String url="jdbc:informix-sqli://localhost:1533/testDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword";
Connection conn=DriverManager.getConnection(url);

//Sybase数据库
String url="jdbc:sybase:Tds:localhost:5007/tsdata";
Properties sysProps=System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn=DriverManager.getConnection(url,SysProps);

//MySQL数据库
String url="jdbc:mysql://localhost:3306/testDB?user=root&password=root&useUnicode=true&characterEncoding=gb2312";
Connection conn=DriverManager.getConnection(url);

//PostgreSQL数据库
String url="jdbc:postgresql://localhost/testDB";
String user="myuser";
String password="mypassword";
Connection conn=DriverManager.getConnection(url,user,password);
4 建立Statement对象或PreparedStatement对象.例如:
//建立Statement对象
Statement stmt=conn.createStatement();
//建立ProparedStatement对象
String sql="select * from user where userName=? and password=?";
PreparedStatement pstmt=Conn.prepareStatement(sql);
pstmt.setString(1,"admin");
pstmt.setString(2,"liubin");
5 执行SQL语句.例如:
String sql="select * from users";
ResultSet rs=stmt.executeQuery(sql);
//执行动态SQL查询
ResultSet rs=pstmt.executeQuery();
//执行insert update delete等语句,先定义sql
stmt.executeUpdate(sql);
6 访问结果记录集ResultSet对象。例如:
while(rs.next)
{
out.println("你的第一个字段内容为:"+rs.getString());
out.println("你的第二个字段内容为:"+rs.getString(2));
}
7 依次将ResultSet、Statement、PreparedStatement、Connection对象关闭,释放所占用的资源.例如:
rs.close();
stmt.clost();
pstmt.close();
con.close();

MySQL:
String Driver="com.mysql.jdbc.Driver"; //驱动程序
String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).new Instance();
Connection con=DriverManager.getConnection(URL,Username,Password);
Microsoft SQL Server 2.0驱动(3个jar的那个):
String Driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"; //连接SQL数据库的方法
String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).new Instance(); //加载数据可驱动
Connection con=DriverManager.getConnection(URL,UserName,Password); //
Microsoft SQL Server 3.0驱动(1个jar的那个): // 老紫竹完善
String Driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; //连接SQL数据库的方法
String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).new Instance(); //加载数据可驱动
Connection con=DriverManager.getConnection(URL,UserName,Password); //
Sysbase:
String Driver="com.sybase.jdbc.SybDriver"; //驱动程序
String URL="jdbc:Sysbase://localhost:5007/db_name"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
Connection con=DriverManager.getConnection(URL,Username,Password);
Oracle(用thin模式):
String Driver="oracle.jdbc.driver.OracleDriver"; //连接数据库的方法
String URL="jdbc:oracle:thin:@loaclhost:1521:orcl"; //orcl为数据库的SID
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance(); //加载数据库驱动
Connection con=DriverManager.getConnection(URL,Username,Password);
PostgreSQL:
String Driver="org.postgresql.Driver"; //连接数据库的方法
String URL="jdbc:postgresql://localhost/db_name"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
Connection con=DriverManager.getConnection(URL,Username,Password);
DB2:
String Driver="com.ibm.db2.jdbc.app.DB2.Driver"; //连接具有DB2客户端的Provider实例
//String Driver="com.ibm.db2.jdbc.net.DB2.Driver"; //连接不具有DB2客户端的Provider实例
String URL="jdbc:db2://localhost:5000/db_name"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
Connection con=DriverManager.getConnection(URL,Username,Password);
Informix:
String Driver="com.informix.jdbc.IfxDriver";
String URL="jdbc:Informix-sqli://localhost:1533/db_name:INFORMIXSER=myserver"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
Connection con=DriverManager.getConnection(URL,Username,Password);
JDBC-ODBC:
String Driver="sun.jdbc.odbc.JdbcOdbcDriver";
String URL="jdbc:odbc:dbsource"; //dbsource为数据源名
String Username="username"; //用户名
String Password="password"; //密码
Class.forName(Driver).newInstance();
Connection con=DriverManager.getConnection(URL,Username,Password);

示例:

public class ConnectDB {
public static void main(String args[]) {
// 连接SQL Server的默认数据库
String url = "jdbc:sqlserver://localhost:1433;databaseName=test;user=test;password=0127";
// String url = "jdbc:jtds:sqlserver://localhost:1433/test;tds=8.0;lastupdatecount=true";
Connection con = null;
Statement stat = null;
ResultSet rs = null;
try {
// 加载JDBC驱动,其中
// com.microsoft.jdbc.sqlserver.SQLServerDriver是这个驱动的类名
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// Class.forName("net.sourceforge.jtds.jdbc.Driver");

System.out.println("驱动程序已装载");
System.out.println("即将连接数据库");
} catch (Exception ex) { // 如果无法加载驱动,则给出错误信息
System.out.println("无法加载驱动程序:" + ex.getMessage());
return;
}
try {
// 登陆数据库的用户名是test,密码是0127
// con = DriverManager.getConnection(url,"test","0127");
con = DriverManager.getConnection(url);

stat = con.createStatement();
// 对student表进行查询
rs = stat.executeQuery("SELECT * FROM student");
System.out.println("查询结果为:");
while (rs.next()) {
System.out.println(rs.getString(1) + rs.getString(2)
+ rs.getString(3) + rs.getString(4));
}
rs.close();
stat.close();
con.close();
} catch (SQLException ex) {
while (ex != null) {
ex.printStackTrace();
ex = ex.getNextException();
}
}
}
}

参考资料: sername

凌云走过
2011-03-16 · 超过28用户采纳过TA的回答
知道答主
回答量:131
采纳率:0%
帮助的人:60.5万
展开全部
参照楼上的那些方法取出合适的
把你的catch里放上控制台要输入的错误信息,才知道具体是什么错误引起的啊,然后再上百度搜啊搜
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户40197
2011-03-17 · TA获得超过709个赞
知道小有建树答主
回答量:672
采纳率:100%
帮助的人:479万
展开全部
odbc.JdbcOdbcDriver");
大哥你不小心拼写出错,jdbc不是jabc
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式