使用C#操作DBF数据库

现在大部分C#连接数据库都会是sql server 。但对一些旧的数据库文件的连接和操作就不太熟了。

今天就有这个问题,要对FOXPRO生成的DBF文件数据库进行操作。

我在CSDN上查了很久,大部分有问题都没很好地回复到这些操作上的问题。

经过我的实验,用ODBC来连接它就可以了。

下面是所用的代码。

都很简单,就是格式上要注意。和用开的查询语句会有很大不同。

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();

  }

注意点:

1 连接串的格式。

2 所对应的表名必须要有路径。

3 Windows 2003操作系统装的vfpodbc.dll是1.0版本,这会造成连接不上,要换成6.1.8630.1版本,服务器位置C:\WINDOWS\system32,特别对于有多台服务器集群的,部署的时候要保证一致的版本!

http://www.cnblogs.com/tanjy/archive/2006/11/14/560046.html

时间: 2024-10-25 08:29:58

使用C#操作DBF数据库的相关文章

如何使用c#操作ACCESS数据库

  如何使用c#操作ACCESS数据库: 手头没有Microsoft Access,如何建立数据库,一切依然简单. 首先引用C:Program FilesCommon FilesSystemadomsadox.dll,该DLL包含ADOX命名空间; 接着引用C:Program FilesCommon FilesSystemadomsjro.dll,该DLL包含JRO命名空间 SxS好问提示:如,导入dll不成功,手动把com组件导入为 .net组件,在用vs.net工具导入 using Syst

使用c#操作ACCESS数据库

  手头没有Microsoft Access,如何建立数据库,一切依然简单. 首先引用C:Program FilesCommon FilesSystemadomsadox.dll,该DLL包含ADOX命名空间; 接着引用C:Program FilesCommon FilesSystemadomsjro.dll,该DLL包含JRO命名空间 SxS好问提示:如,导入dll不成功,手动把com组件导入为 .net组件,在用vs.net工具导入 using System; using System.IO

直接通过ADO操作Access数据库

我在"直接通过ODBC读.写Excel表格文件"和"直接通过DAO读.写Access文件",先后给大家介绍了ODBC和DAO两种数据库访问技术的基本使用方法,这次要给大家介绍的是ADO数据库访问技术的使用方法.ADO(Active Data Object,活动数据对象)实际上是一种基于COM(组件对象模型)的自动化接口(IDispatch)技术,并以OLE DB(对象连接和镶入的数据库)为基础,经过OLE DB精心包装后的数据库访问技术,利用它可以快速的创建数据库应

Php操作oracle数据库指南-本人原创,经验总结,不能不看

oracle|数据|数据库|原创 本人由于工作关系使用Oracle数据库,发现这里用的人不多,但时常发现有人提的关于PHP操作ORACLE数据库的问题得不到回答,我也曾问过几个,但也无人响应,因此决定把本人在工作中积攒起来的一些技巧.经验奉献出来,希望对使用oracle数据库的人有所帮助.一.配置环境:访问Oracle8以上的数据库需要用到Oracle8 Call-Interface(OCI8).这个扩展模块需要Oracle8 的客户端函数库,因此需要你要连接远程Oracle数据库的话,还要装上

第二部分,BETA2操作ACCESS数据库

access|数据|数据库 朋友们好,总算又有时间了,搞了两天,头都大了!不过,真的是,.NET的东西太多了,简直有一种眼花缭乱的感觉,看来还是需要静下心来慢慢测试!我的学习观点就是多写程序,多练习,你可以不去记忆那些在资料或帮助上能查到的东西,(我就没有去记,即使是名字空间如何写我都是看帮助),但一定要理解了,而如何理解,最直接的方法就是通过程序来把那些东西直接展示在眼前! 好了,不多说了,接着上次的东西,我们继续来看看,如何在.NET中操作数据库(数据库采用ACCESS 2000,至于SQL

.Net中操作MySql数据库的方法

mysql|数据|数据库 这是在VB.net中为连接MySQL中编写的一个类库.你可以使用这个类库直接操作MySql数据库. 在使用这个类库之前,你必须安装 ODBC MYSQL 3.51下载地址:http://www.mysql.com/downloads/api-myodbc-3.51.html Driver ODBC.NET下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyId=6CCD8427-1017-4F33-A06

操作Oracle数据库实现上传图片到Blob类型的字段出现的问题

oracle|上传|上传图片|数据|数据库|问题 通过使用OleDb操作Oracle数据库,成功实现图片上传到Blob类型的字段,但有时会发生ORA-01036错误的问题,经查询是错误提示为illegal variable name/number,不知道有谁能详细解释illegal variable name/number的意思 Oracle Data Provider for .NETHiI am using ODP.NET (Oracle Data Provider for .NET) in

.Net中操作MySql数据库

mysql|数据|数据库 这是在VB.net中为连接MySql中编写的一个类库.你可以使用这个类库直接操作MySql数据库. 在使用这个类库之前,你必须安装 ODBC MYSQL 3.51下载地址:http://www.mysql.com/downloads/api-myodbc-3.51.html Driver ODBC.NET下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyId=6CCD8427-1017-4F33-A06

BETA2中操作SQL数据库

数据|数据库 在前面,我已经说了如何在BETA2的环境下,操作ACCESS数据库,这次我们来看看如何通过ADO.NET来操作SQL SERVER数据库! 首先我们要知道,在ADO.NET环境下,我们是通过System.Data.SqlClient这个名字空间来操作的,另外还有一个System.Data.SqlTypes名字空间描述了SQL SERVER的字段类型,但它并不直接参与数据库的操作,所以我们重点放在System.Data.SqlClient的使用上! 按照惯例,我还是先列出我的例程:这