当前位置:编程学习 > C#/ASP.NET >>

C#如何判断两个DBF文件结构相同

有两个问题求助:
1:如何判断两个DBF表结构是否相同(就是列的数量和名称都完全相同)
2:如何将DBF中重复的记录删除只剩最开始的一条
请高手分开作答一下,很急,万分感谢! --------------------编程问答-------------------- 1 用ADO.NET的OLEDB连接,读取表的架构信息,逐个列比较
2 如果使用ADO.NET只能是逻辑删除,不可能物理删除
  最好是自己了解一下DBF文件的结构,通过文件操作来进行删除
  此要求目前没有什么好的办法来实现 --------------------编程问答-------------------- 请问如何读取表的架构信息?用SQL语句吗?请给写一下看看可以吗
引用 1 楼 sdfkfkd 的回复:
1 用ADO.NET的OLEDB连接,读取表的架构信息,逐个列比较
2 如果使用ADO.NET只能是逻辑删除,不可能物理删除
  最好是自己了解一下DBF文件的结构,通过文件操作来进行删除
  此要求目前没有什么好的办法来实现
--------------------编程问答-------------------- 这个应该满足你,只是for sql 2005以上,我们有安装,没测试。


网站




my blog
http://ufo-crackerx.blog.163.com/ --------------------编程问答--------------------

            System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();
            conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\fox;Extended Properties=dBASE IV;User ID=Admin;Password=;";
            conn.Open();

            //test为你的表名,不需要带上DBF扩展名
            DataTable table1 = conn.GetOleDbSchemaTable( OleDbSchemaGuid.Columns, new object[] { null, null, "test", null } );
            foreach ( DataRow item in table1.Rows )
            {
                //3列为字段名,11为字段类型,其他的自己根据每一列的列名称能看得出来什么意思
                System.Console.WriteLine( string.Format( "ColName:{0},ColType:{1}", item[3], item[11] ) );
            }
            
           conn.Close();
--------------------编程问答--------------------
引用 4 楼 sdfkfkd 的回复:
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\fox;Extended Properties=dBASE IV;User ID=Admin;Password=;";


d:\fox表示DBF文件所在目录
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,