import java.sql.*;
public class TestVF {
private static Connection con=null;
private static Statement stmt=null;
private static ResultSet rs=null;
/**
*其中dataBaseUrl为你的VF数据库所在的目录
*/
public static void setCon(String dataBaseUrl) throws Exception {
String strurl = "jdbc:odbc:Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB="
+ dataBaseUrl + ";Exclusive=No;";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection(strurl);
}
public static void closeCon()throws Exception{
if(rs!=null){
rs.close();
rs=null;
}
if(stmt!=null){
stmt.close();
stmt=null;
}
if(con!=null){
con.close();
con=null;
}
}
public static void setRs(String sql)throws Exception{
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
}
public static ResultSet getRs() throws Exception{
while(rs.next()){
System.out.println(rs.getString(1));
}
return rs;
}
/**
* @param mc1035
*其中url为传进去的目录,table为要访问的数据库表的文件的名,是DBF文件
*/
public static void main(String[] args) {
String url="e://";
String tableName="Book表";
String SQL="select * from "+tableName;
try{
TestVF.setCon(url);
TestVF.setRs(SQL);
TestVF.getRs();
TestVF.closeCon();
}catch(SQLException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
}
该程是一个完整的VF动态添加ODBC的程序,较为完整的展现了整个过程,可供读者参考。另外,VF的数据库是DBF的,所以SourceType=DBF 为,其实也可以是其他类型的,如Access,其中可以把
String strurl = "jdbc:odbc:Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB="
+ dataBaseUrl + ";Exclusive=No;";
该为
String strurl="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=dataBaseUrl ";
可以达到一样的效果,这个笔者过也很好用,有兴趣的读者可以自己试一下。至于VF的,绝对好用,不用配置ODBC,直接添加路径就OK了,直接输入数据库表的文件名就可以访问该文件了。
本程序完全实现了VF的JDBC-ODBC的动态添加。
至于SQL2000和其他大型数据库本人不推荐使用ODBC,很简单,性能不好,像大型数据库都有专门写的JDBC驱动,可以直接下载使用。
public class TestVF {
private static Connection con=null;
private static Statement stmt=null;
private static ResultSet rs=null;
/**
*其中dataBaseUrl为你的VF数据库所在的目录
*/
public static void setCon(String dataBaseUrl) throws Exception {
String strurl = "jdbc:odbc:Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB="
+ dataBaseUrl + ";Exclusive=No;";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection(strurl);
}
public static void closeCon()throws Exception{
if(rs!=null){
rs.close();
rs=null;
}
if(stmt!=null){
stmt.close();
stmt=null;
}
if(con!=null){
con.close();
con=null;
}
}
public static void setRs(String sql)throws Exception{
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
}
public static ResultSet getRs() throws Exception{
while(rs.next()){
System.out.println(rs.getString(1));
}
return rs;
}
/**
* @param mc1035
*其中url为传进去的目录,table为要访问的数据库表的文件的名,是DBF文件
*/
public static void main(String[] args) {
String url="e://";
String tableName="Book表";
String SQL="select * from "+tableName;
try{
TestVF.setCon(url);
TestVF.setRs(SQL);
TestVF.getRs();
TestVF.closeCon();
}catch(SQLException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}
}
该程是一个完整的VF动态添加ODBC的程序,较为完整的展现了整个过程,可供读者参考。另外,VF的数据库是DBF的,所以SourceType=DBF 为,其实也可以是其他类型的,如Access,其中可以把
String strurl = "jdbc:odbc:Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB="
+ dataBaseUrl + ";Exclusive=No;";
该为
String strurl="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=dataBaseUrl ";
可以达到一样的效果,这个笔者过也很好用,有兴趣的读者可以自己试一下。至于VF的,绝对好用,不用配置ODBC,直接添加路径就OK了,直接输入数据库表的文件名就可以访问该文件了。
本程序完全实现了VF的JDBC-ODBC的动态添加。
至于SQL2000和其他大型数据库本人不推荐使用ODBC,很简单,性能不好,像大型数据库都有专门写的JDBC驱动,可以直接下载使用。