苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 4474|回复: 2

[其他] 关于C#操作dbf文件的思路

[复制链接]
发表于 2013-6-26 22:29:10 | 显示全部楼层 |阅读模式
因为工作的关系需要处理一定数量的DBF文件。

因为工作软件每次导出的数据都是DBF格式的文件

我每次只能通过VFP软件或者access软件处理导出的N个dbf文件之间的关联
然后生成一个总EXCEL表,便于工作。

总觉得麻烦,而且access做表关联也不是每个人都会,就想自己写个软件来操作

请问我该怎么做,直接用某某语句操作DBF,如果这样改通过什么样的SQL语句来让多个表关联起来?

还是把我的dbf表导入到SQL数据中,通过SQL语句实现关联查询,然后输出结果?


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2013-6-27 07:57:24 | 显示全部楼层
C#也是可以连接 dbf格式数据库的,当然同样支持Sql语句,跟Sql的写法是一样的
都很简单,就是格式上要注意。和用开的查询语句会有很大不同。
[code=csharp]
protected void Page_Load(object sender, EventArgs e)
    {
        System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection();
        string table = @"D:\aaa\code.dbf";
        string connStr=@"Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=" + table + ";Exclusive=No;NULL=NO;Collate=Machine;BACKGROUNDFETCH=NO;DELETED=NO";

        conn.ConnectionString = connStr;
        conn.Open();
      

        OdbcCommand cmd = new OdbcCommand();
        cmd.Connection = conn;
        string sql = "update " + table + " set other='2',rate=1.014 ";
        cmd.CommandText = sql;
        cmd.CommandType = CommandType.Text;
        cmd.ExecuteNonQuery();

         sql = @"select * from " + table;
        OdbcDataAdapter da = new OdbcDataAdapter(sql,conn);
        DataTable dt = new DataTable();
        da.Fill(dt);
        this.GridView1.DataSource = dt.DefaultView;
        this.GridView1.DataBind();
    }
[/code]
注意点:1 连接串的格式。2 所对应的表名必须要有路径。
 楼主| 发表于 2013-7-2 22:13:48 | 显示全部楼层
谢谢老大
貌似你这样的方法可以避免了导入dbf到SQL再进行操作了
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-12-27 02:36

© 2014-2021

快速回复 返回顶部 返回列表