Я хочу обновить файл .dbf из моего приложения .net.Я смог прочитать файл .dbf в сетку, но не смог обновить файл .dbf из моего приложения .net.
Я использовал следующий код для чтения файла .dbf.Чтение в порядке.Но не может обновить файл .dbf.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using System.Data.Odbc;
namespace DBFwin
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void ConnectToDBF()
{
System.Data.Odbc.OdbcConnection oConn = new System.Data.Odbc.OdbcConnection();
oConn.ConnectionString = @"Driver={Microsoft dBase Driver (*.dbf)};SourceType=DBF;SourceDB=D:\databases\;Exclusive=No; Collate=Machine;NULL=NO;DELETED=NO;BACKGROUNDFETCH=NO;";
oConn.Open();
System.Data.Odbc.OdbcCommand oCmd = oConn.CreateCommand();
//Test.DBF is the dbf file which is located at C:\rd\Setup folder.
oCmd.CommandText = @"SELECT * FROM C:\rd\Setup\Test.DBF";
DataTable dt = new DataTable();
dt.Load(oCmd.ExecuteReader());
//Adding a row..
//DataRow dtRow = dt.LoadDataRow();
DataRow dtRow = dt.NewRow();
//FIELD1 and FIELD2 are two columns of dbf file.
dtRow["FIELD1"] = 999;
dtRow["FIELD2"] = "RA-12";
dt.BeginLoadData();
dt.Rows.Add(dtRow);
dt.EndLoadData();
//Above code adding a row in the grid, which is fine.
//How can i update dbf file from this source code???
oConn.Close();
dataGridView1.DataSource = dt;
}
private void btnClick_Click(object sender, EventArgs e)
{
ConnectToDBF();
}
}
}
ПРИМЕЧАНИЕ. Я также видел, что сторонний компонент Apollo доступен для чтения, добавления, редактирования записей файла .dbf из приложения .NET,Этот компонент разработан VistaSoftware.com.Это не бесплатная программа.Не могли бы вы подтвердить, чтобы обновить файл .dbf, должен ли я использовать этот сторонний компонент, или я могу сделать это с помощью моего приложения .net.