我有一個Access表,我最近添加了一個附件字段。該表是關於每臺計算機的計算機和信息的列表。它的用戶,安裝的軟件等等。附件字段將包含從每臺計算機收到的簡單文本配置文件。C#在現有訪問數據庫上的附件字段更新
我曾與一些代碼在這裏找到:Programmatically managing Microsoft Access Attachment-typed field with .NET
我的問題是,我似乎無法更新正確的字段。意思是計算機名稱的配置文件Bob被放置在正確的字段中,但是如果這是合理的,則是錯誤的計算機。以下是一個SQL語句示例。
Select * From MyTable WHERE ComputerName Like 'Bob'
根據要求整個代碼段。
public void InsertFile(String Path, String CmpName)
{
DBEngine dbe = new DBEngine();
Database db = dbe.OpenDatabase("MyAccessDB.accdb", false, false, "");
Recordset rs = db.OpenRecordset(
"SELECT * FROM MyTable WHERE ComputerName LIKE '" + CmpName + "\'",
RecordsetTypeEnum.dbOpenDynaset, 0, LockTypeEnum.dbOptimistic);
rs.MoveFirst();
rs.Edit();
Recordset2 rs2 = (Recordset2)rs.Fields["My_File"].Value;
rs2.AddNew();
Field2 f2 = (Field2)rs2.Fields["FileData"];
f2.LoadFromFile(Path);
rs2._30_Update();
rs2.Close();
rs._30_Update();
rs.Close();
}
我希望使用OpenRecodeset()
時,上面的語句會給我只是行,那麼唯一的附件欄該行。然而,這種情況並非如此。我已經搜索瞭解如何迭代記錄集以找到沒有運氣的正確行。我在這裏是新的,所以我希望我涵蓋了我需要的一切。
你可以圍繞該語句顯示代碼嗎? – Steve 2012-04-20 19:49:23