驱动改下,下面自己参考,数据库名即access的文件名,加路径,路径为绝对路径为access在电脑上的路径,注意是双斜杆!!!,不需要用户名密码
try
{ //加载数据库驱动程序
ClassforName("sunjdbcodbcJdbcOdbcDriver");
}
catch(ClassNotFoundException e)
{ Systemoutprintln("加载数据库驱动程序错误!");
}
String dbf="F:\\linguosheng\\文档\\dbmdb"; //连接一个access数据库
dburl = "jdbc:odbc:driver={Microsoft Access Driver (mdb)};DBQ=" + dbf;
try
{ //创建数据库连接对象
conn = DriverManagergetConnection(dburl, "", "");//(url,账号,密码)
//创建命令执行对象(一般的查询和更新 *** 作)
stmt = conncreateStatement();
//需要使用ResultSet对象进行更新 *** 作时
rstmt = conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE, ResultSetCONCUR_UPDATABLE);
}
catch(SQLException e)
{ Systemoutprintln("创建数据库连接错误!");
}
}
JAVA 连接access2010数据库都是固定几种方法,以下是在网上找的一些方法,
示例代码:
import javasql;
public class ConnectAccess {
/
注意:
1:先建立一个access文件xxxmdb,并放在制定盘符X:/下;
2:在数据库文件xxxmdb中建立一个表Tablexx1;
3:为Table1添加一列,并插入至少一条记录;
/
public static void main(String args[]) throws Exception {
ConnectAccess ca=new ConnectAccess();
caConnectAccessFile();
caConnectAccessDataSource();
}
/
方法一:直接连接access文件。
/
public void ConnectAccessFile() throws Exception {
ClassforName("sunjdbcodbcJdbcOdbcDriver");
String dbur1 = "jdbc:odbc:driver={Microsoft Access Driver (mdb)};DBQ=X://xxxmdb";
Connection conn = DriverManagergetConnection(dbur1, "username", "password");
Statement stmt = conncreateStatement();
ResultSet rs = stmtexecuteQuery("select from Tablexx1");
while (rsnext()) {
Systemoutprintln(rsgetString(1));
}
rsclose();
stmtclose();
connclose();
}
/
方法二:采用ODBC连接方式
在windows下,开始-->控制面板-->性能和维护-->管理工具-->数据源,在数据源这里添加一个指向xxxmdb文件的数据源。
比如创建名字为xxxxS1
/
public void ConnectAccessDataSource()throws Exception {
ClassforName("sunjdbcodbcJdbcOdbcDriver");
String dbur1 = "jdbc:odbc:xxxxS1";// 此为ODBC连接方式
Connection conn = DriverManagergetConnection(dbur1, "username", "password");
Statement stmt = conncreateStatement();
ResultSet rs = stmtexecuteQuery("select from Tablexx1");
while (rsnext()) {
Systemoutprintln(rsgetString(1));
}
rsclose();
stmtclose();
connclose();
}
}
1 建立数据库连接,取得Connection对象例如:
//Oracle8/8i/9i数据库(thin模式)
String url="jdbc:oracle:thin:@localhost:1521:orcl";
String user="scott";
String password="tiger";
Connection conn=DriverManagergetConnection(url,user,password);
//Sql Server70/2000数据库
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
String user="sa";
String password="";
Connection conn=DriverManagergetConnection(url,user,password);
//DB2数据库
String url="jdbc:db2://localhost:5000/sample";
String user="amdin"
String password=-"";
Connection conn=DriverManagergetConnection(url,user,password);
//Informix数据库
String url="jdbc:informix-sqli://localhost:1533/testDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword";
Connection conn=DriverManagergetConnection(url);
//Sybase数据库
String url="jdbc:sybase:Tds:localhost:5007/tsdata";
Properties sysProps=SystemgetProperties();
SysPropsput("user","userid");
SysPropsput("password","user_password");
Connection conn=DriverManagergetConnection(url,SysProps);
//MySQL数据库
String url="jdbc:mysql://localhost:3306/testDBuser=root&password=root&useUnicode=true&characterEncoding=gb2312";
Connection conn=DriverManagergetConnection(url);
//PostgreSQL数据库
String url="jdbc:postgresql://localhost/testDB";
String user="myuser";
String password="mypassword";
Connection conn=DriverManagergetConnection(url,user,password);
4 建立Statement对象或PreparedStatement对象例如:
//建立Statement对象
Statement stmt=conncreateStatement();
//建立ProparedStatement对象
String sql="select from user where userName= and password=";
PreparedStatement pstmt=ConnprepareStatement(sql);
pstmtsetString(1,"admin");
pstmtsetString(2,"liubin");
5 执行SQL语句例如:
String sql="select from users";
ResultSet rs=stmtexecuteQuery(sql);
//执行动态SQL查询
ResultSet rs=pstmtexecuteQuery();
//执行insert update delete等语句,先定义sql
stmtexecuteUpdate(sql);
6 访问结果记录集ResultSet对象。例如:
while(rsnext)
{
outprintln("你的第一个字段内容为:"+rsgetString());
outprintln("你的第二个字段内容为:"+rsgetString(2));
}
7 依次将ResultSet、Statement、PreparedStatement、Connection对象关闭,释放所占用的资源例如:
rsclose();
stmtclost();
pstmtclose();
conclose();
MySQL:
String Driver="commysqljdbcDriver"; //驱动程序
String URL="jdbc:mysql://localhost:3306/db_name"; //连接的URL,db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)new Instance();
Connection con=DriverManagergetConnection(URL,Username,Password);
Microsoft SQL Server 20驱动(3个jar的那个):
String Driver="commicrosoftjdbcsqlserverSQLServerDriver"; //连接SQL数据库的方法
String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)new Instance(); //加载数据可驱动
Connection con=DriverManagergetConnection(URL,UserName,Password); //
Microsoft SQL Server 30驱动(1个jar的那个): // 老紫竹完善
String Driver="commicrosoftsqlserverjdbcSQLServerDriver"; //连接SQL数据库的方法
String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name"; //db_name为数据库名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)new Instance(); //加载数据可驱动
Connection con=DriverManagergetConnection(URL,UserName,Password); //
Sysbase:
String Driver="comsybasejdbcSybDriver"; //驱动程序
String URL="jdbc:Sysbase://localhost:5007/db_name"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)newInstance();
Connection con=DriverManagergetConnection(URL,Username,Password);
Oracle(用thin模式):
String Driver="oraclejdbcdriverOracleDriver"; //连接数据库的方法
String URL="jdbc:oracle:thin:@loaclhost:1521:orcl"; //orcl为数据库的SID
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)newInstance(); //加载数据库驱动
Connection con=DriverManagergetConnection(URL,Username,Password);
PostgreSQL:
String Driver="orgpostgresqlDriver"; //连接数据库的方法
String URL="jdbc:postgresql://localhost/db_name"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)newInstance();
Connection con=DriverManagergetConnection(URL,Username,Password);
DB2:
String Driver="comibmdb2jdbcappDB2Driver"; //连接具有DB2客户端的Provider实例
//String Driver="comibmdb2jdbcnetDB2Driver"; //连接不具有DB2客户端的Provider实例
String URL="jdbc:db2://localhost:5000/db_name"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)newInstance();
Connection con=DriverManagergetConnection(URL,Username,Password);
Informix:
String Driver="cominformixjdbcIfxDriver";
String URL="jdbc:Informix-sqli://localhost:1533/db_name:INFORMIXSER=myserver"; //db_name为数据可名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)newInstance();
Connection con=DriverManagergetConnection(URL,Username,Password);
JDBC-ODBC:
String Driver="sunjdbcodbcJdbcOdbcDriver";
String URL="jdbc:odbc:dbsource"; //dbsource为数据源名
String Username="username"; //用户名
String Password="password"; //密码
ClassforName(Driver)newInstance();
Connection con=DriverManagergetConnection(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=80;lastupdatecount=true";
Connection con = null;
Statement stat = null;
ResultSet rs = null;
try {
// 加载JDBC驱动,其中
// commicrosoftjdbcsqlserverSQLServerDriver是这个驱动的类名
ClassforName("commicrosoftsqlserverjdbcSQLServerDriver");
// ClassforName("netsourceforgejtdsjdbcDriver");
Systemoutprintln("驱动程序已装载");
Systemoutprintln("即将连接数据库");
} catch (Exception ex) { // 如果无法加载驱动,则给出错误信息
Systemoutprintln("无法加载驱动程序:" + exgetMessage());
return;
}
try {
// 登陆数据库的用户名是test,密码是0127
// con = DriverManagergetConnection(url,"test","0127");
con = DriverManagergetConnection(url);
stat = concreateStatement();
// 对student表进行查询
rs = statexecuteQuery("SELECT FROM student");
Systemoutprintln("查询结果为:");
while (rsnext()) {
Systemoutprintln(rsgetString(1) + rsgetString(2)
+ rsgetString(3) + rsgetString(4));
}
rsclose();
statclose();
conclose();
} catch (SQLException ex) {
while (ex != null) {
exprintStackTrace();
ex = exgetNextException();
}
}
}
}
String url = "jdbc:odbc:driver={Microsoft Access Driver (mdb,accdb)};DBQ=c:\\ICaccdb";
更改为
String url = "jdbc:odbc:driver={Microsoft Access Driver (mdb)};DBQ=c:\\ICmdb";
库保存为后缀名称为 mdb(别特么手动改后缀,重新创建库的时候更改)
可暂时解决你目前的问题
access文件时不能直接当成数据库来使用的,要通过access文件来创建一个数据源,Java代码连结的是这个数据源;点击“控制面板”--“管理工具”--“数据源(ODBC)”,点击添加,加一个access(mdb)数据源:
点击完成,在第二个页面中点击“选择”来选择你的access文件的路径,数据源名称自己起,这个名称是Java连结数据源的时候用的(Java连的是数据源名称,不是access文件名);
至于jar包,你试试我这个
当然,可能你这种方式不用手动创数据源也行,我没试过
以上就是关于jdk1.8环境下java如何连接access数据库全部的内容,包括:jdk1.8环境下java如何连接access数据库、JAVA 连接access2010数据库连接、Java连接Access数据库 疑问等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)