>
这是vf的表,里面应该是数据资料,下载visual foxpro 6,或者更高版本安装,即可关联此文件,打开就行了。
你说你的vf写的软件运行不了?不知你的软件是vf哪个版本写的,如果你机器里没有装vf,需vf运行库文件支持。
browse是浏览表,但也可直接修改数据browse命令很多
我真不知道你想干什么,一个datadbf表,是不是让你编程啊
要是编写软件应该不是很困难,不过不会vf的太难了
如果上手vf,一个月应该能 *** 作数据
这个很简单啊,用索引和排序就可以了
或者用程序语句,比如scanendscan 等 等位语句locate for等,browse for 等
或者用物理排序sort to a on for生成一个dbf
dbf是Digital
Beam
Forming的缩写,译为数字波束形成
或数字波束合成,广泛应用于阵列信号处理领域,还表示一种数据库文件。
DBF
数据库可以分为
dBase
III
、foxpro
格式两类。
DBF
数据库是常用的桌面型数据库,它曾经被各企业、事业单位广泛使用。现在,虽然已经有了很多的各种各样的小、中、大型数据库,DBF
数据库依然被很多单位用于数据交换。
打开方式:
DBF
Viewer
Pro
是一个用于
Windows
下的
DBF
数据库文件管理器。
可用FOXPRO打开
还可用EXCEL进行打开
java直接访问DBF需要第三方的JDBC驱动支持,DBF的第三方JDBC驱动要收费的,在windows系统下也可以在ODBC里面建DSN,然后用JDBC-ODBC桥连接ODBC的DSN,这样就可以正常访问和使用DBF数据库了,包括增删查改 *** 作,也可以用新建数据表的方式实现导出数据
你是打开了VFP,并且打开了表(DBF文件)吧?如果没有打开VFP,在WINDOWS下覆盖不会出现此类的提示。
如果表在数据库中(不是自由表),要查看表间的关系、触发器、索引等,记录下来,然后从数据库中移除,退出VFP,再覆盖,然后打开数据库,把表添加进去,重新建立关系、触发器、索引等。
使用JDBC-ODBC桥接方式读取Access文件,使用Acces
与DBF都需要配置桥接模式,在控制面板里,选择管理工具里配置
核心代码如下,
Java代码
try {
ClassforName("sunjdbcodbcJdbcOdbcDriver");
con = DriverManagergetConnection("jdbc:odbc:ss", bulidPath, "");//加载驱动,默认密码,空字符串即可
//Systemoutprintln("Access连接:"+con);
} catch (Exception e) {
eprintStackTrace();
}
Java代码
AccessBase ab=new AccessBase();
Connection con=abgetConnection("zdbzmdb");
String sql="select from test";//查询表
PreparedStatement ps=conprepareStatement(sql);
ResultSet rs=psexecuteQuery();
//ResultSetMetaData s=rsgetMetaData();
// int i=sgetColumnCount();
//Systemoutprintln(i);
List<ExcelEntity> list=new ArrayList<ExcelEntity>();
while(rsnext()){
ExcelEntity xml=new ExcelEntity();
xmlsetUi(rsgetString(1));
xmlsetTi(rsgetString(2));
xmlsetTa(rsgetString(3));
xmlsetDp(rsgetString(4));
xmlsetVi(rsgetString(5));
xmlsetIp(rsgetString(6));
xmlsetPg(rsgetString(7));
xmlsetAb(rsgetString(8));
xmlsetKw(rsgetString(9));
xmlsetMh(rsgetString(10));
listadd(xml);
}
DAOaddAccess(list);
// Systemoutprintln(i);
rsclose();
psclose();
conclose();
4,最后在来说一下,比较纠结的DBF的解析,关于这个东西,散仙以前也没用过,现在客户有这种需求,自然得做好,于是乎Google了一把,效果似乎还不错,第一页上基本全是有关于,JAVA解析DBF格式的,当时我还在想,得来全不费工夫,于是,找了一篇,看起来似乎挺靠谱的解析博客,拷贝了其中的代码,拿过来使用,结果报了各种异常,这种方式是用流读取的,然后直接解析流,提取每一行数据,还附带一个jar包,散仙后面会把jar给传上来,我们先看下这种方式的代码:
Java代码
package comdbhelper;
import javaioFileInputStream;
import javaioInputStream;
import comhexiongjdbfDBFReader;
public class ParseDBF {
public static void main(String[] args) {
readDBF("C:\\Users\\cuichao\\Desktop\\zdbz\\testDBF");
}
public static void readDBF(String path)
{
InputStream fis = null;
try
{
// 读取文件的输入流
fis = new FileInputStream(path);
// 根据输入流初始化一个DBFReader实例,用来读取DBF文件信息
DBFReader reader = new DBFReader(fis);
//DBFReader reader=new DBFReader("C:\\Users\\cuichao\\Desktop\\zdbz\\testDBF");
// Systemoutprintln(reader);
// 调用DBFReader对实例方法得到path文件中字段的个数
int fieldsCount = readergetFieldCount();
Systemoutprintln(fieldsCount);
Object[] s= readernextRecord();
while(readernextRecord()!=null&&readernextRecord()length>0){
for(int i=0;i<readernextRecord()length;i++){
Systemoutprintln(readernextRecord()[i]);
}
}
}
catch (Exception e)
{
eprintStackTrace();
}
finally
{
try {
// fisclose();
} catch (Exception e) {
}
}
}
}
这种流读取的方式,散仙也看了下源码,代码比较繁琐,而且有好多限制不能用,比如说,读取某列的字符长度不能大于8,或者包含某个C或D的字符的不能用,等等。散仙,猜想这个发博客的人,是根据自己的业务定义的,这也不能怪人家,各个业务的需求都不一样,难免会出现这种情况。 下面,我们来看看,最王道,最通用的解析方法, 既然,它是数据库,那么我们为什么不按数据库的方式来搞呢? 用流读取的方式,不通用,而且异常百出,按数据库的方式,解决,才是最完美的方法。
首先配置好的桥接,截图如下
核心代码如下
Java代码
ClassforName("sunjdbcodbcJdbcOdbcDriver");//加载驱动
try {
//conn = DriverManagergetConnection(DB_URL);
conn = DriverManagergetConnection("jdbc:odbc:ss","testdbf","");//无密码则空字符串
pstm = connprepareStatement("select from test"); // 此处的XXB 为DBF数据文件的名字
rs = pstmexecuteQuery();
至此,完美解决DBF数据库文件读取。网上的东西,太杂了,所以,我们要理智判断,取其精华,去其糟粕,为我所用。
终于被我找到了!
完全free的: com/ 这个网站主要是做数据库连接中间介的,其中用到了一个他们自己开发的叫做JDBF的项目,该项目就是专门控制dbf文件的,整个包只有30K大小,你们随便用个工具反编译一下就可以看懂里面的代码,很简单,就是按照具体格式处理文件!(注意,不是使用JDBC连接的。)
不过我试了一下,发现只支持三中格式的:foxpro2x、DBase IV、DBase III。
大家用得着的话可以去那里下载! 有问题的话可以再来问我。
我发现国外的这类开源网站很多,国内的就少得可怜了!唉!
以上就是关于dbf 数据库基本 *** 作语句全部的内容,包括:dbf 数据库基本 *** 作语句、如何将DBF数据库转换成SQL Server表、dbf文件怎么修改等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)