package com.vstsoft.lf;import java.sql.*;
import java.sql.ResultSet;
import java.lang.*;
import java.sun.*;public class ExportData {
public int ExportData(String sQxbm) throws Exception {
try {
String DBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(DBDriver);
}
catch (java.lang.ClassNotFoundException e) {
System.err.println("DBconn (): " + e.getMessage());
}
Connection connAccess = null;
Statement stmtAccess = null;
String ConnStr = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=c:\\lf2004\\access\\lfdbinit.mdb";
try {
connAccess = DriverManager.getConnection(ConnStr);
connAccess.setAutoCommit(true);
stmtAccess = connAccess.createStatement();
}
catch (Exception ex) {
System.err.println("STMT (): " + ex.getMessage());
}
try {
strSQL = "delete from gr_xx";
stmtAccess.execute(strSQL);
}
catch (SQLException e) {
System.err.println("execute: " + e.getMessage());
}
catch (Exception e) {
e.printStackTrace();
}
}
}
import java.sql.ResultSet;
import java.lang.*;
import java.sun.*;public class ExportData {
public int ExportData(String sQxbm) throws Exception {
try {
String DBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(DBDriver);
}
catch (java.lang.ClassNotFoundException e) {
System.err.println("DBconn (): " + e.getMessage());
}
Connection connAccess = null;
Statement stmtAccess = null;
String ConnStr = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=c:\\lf2004\\access\\lfdbinit.mdb";
try {
connAccess = DriverManager.getConnection(ConnStr);
connAccess.setAutoCommit(true);
stmtAccess = connAccess.createStatement();
}
catch (Exception ex) {
System.err.println("STMT (): " + ex.getMessage());
}
try {
strSQL = "delete from gr_xx";
stmtAccess.execute(strSQL);
}
catch (SQLException e) {
System.err.println("execute: " + e.getMessage());
}
catch (Exception e) {
e.printStackTrace();
}
}
}
---------------------------------------------------------------
建议把mdb文件放到和应用一致的文件夹下,通过相对路径访问,而非绝对路径,这样可以提高程序的灵活性. :-)
stmtAccess.execute(strSQL);执行删除操作应该用executeUpdate(),也就是stmtAccess.executeUpdate(strSQL);2. connAccess.setAutoCommit(true);这么做没必要默认情况下jdbc连接都是自动提交的.如果要实现显式jdbc事务的话可以写成
connAccess.setAutoCommit(false);最后用connAccess.commit()提交事务或者在异常处理中用connAccess.rollback()回滚事务.
日期:星期五 2003 11 28 作者:skywoo 人气:2149 查看:[大字体 中字体 小字体]
对于设置与windows下的jsp服务器,且系统较小时,使用access是一个比较好的选择,但是要使用access数据库一般要通过数据源。这里提供一种不用使用数据源用java直接连接数据源的方法。例子程序如下:
importjava.sql.*;
publicclassAccess
{
publicstaticvoidmain(Stringargs[])
{
try
{
Stringstrurl="jdbc:odbc:driver={MicrosoftAccessDriver(*.mdb)};DBQ=books.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connectionconn=DriverManager.getConnection(strurl);
Statementstmt=conn.createStatement();
ResultSetrs=stmt.executeQuery("select*frombooks");
if(rs.next())
{
System.out.println(rs.getString("简介"));
}
}catch(Exceptione)
{
System.out.println(e); }
}
}
可以看到只要在driver后面加上odbc驱动即可不用设置数据源,这种方法对其他小型数据库(如forpro)应该也适用。(出处:CSDN
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//加载驱动系统自带的!
Connectionconn=DriverManager.getConnection(strurl);
Statementstmt=conn.createStatement();
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(Exception e1){}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:name");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from tablename");
while(rs.next)
{
out.println(rs.getString(1));
}
}
catch(Exception e2){}
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:MS Access Database;DBQ="+DBPath;
String user=DBUser;
String password=DBPassword;
conn=DriverManager.getConnection(url,user,password);
stmt=conn.createStatement();
}catch(ClassNotFoundException e){
System.out.println("驱动程序不存在");
}catch(SQLException e){
System.out.println("连接数据库错误");
}
import java.sql.*;
class BookQuery
{
public static void main(String args[])
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ce)
{
System.out.println("SQLException: "+ce.getMessage());
}
try
{
Connection con=DriverManager.getConnection("jdbc:odbc:bookbase");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from bookTab");
while(rs.next())
{
System.out.println(
"书号: "+rs.getInt(1)+"\t"+
"书名: "+rs.getString(2)+"\t"+
"作者: "+rs.getString(3)+"\t"+
"单价: "+rs.getFloat(4));
}
stmt.close();
con.close();
}
catch(SQLException e)
{
System.out.println("SQLException: "+e.getMessage());
}
}
}