2016-02-25 93 views
0

我正在將Excel數據庫轉換爲Access數據庫。來自多個字段的更新表

我有兩個表 - DataFromExceltbl_AuditResults
DataFromExcel具有下列字段:AutoNum(PK),11 Comment22 Comment,.... 1919 Comment
tbl_AuditResults具有下列字段:ID(PK),Param(PK),Result(布爾型),Notes

DataFromExcel具有用於每個ID(和相關的註釋字段)19名的字段,
tbl_AuditResults有19個記錄針對每個ID和Notes字段。

我期待更新Result & Notes領域表現出真正和評論,如果相關DataFromExcel字段包含數字1

我有這樣的SQL它通過場爲基礎的現場工作,但我必須爲每個字段更新它(示例是字段4)。

UPDATE tbl_AuditResults INNER JOIN DataFromExcel ON tbl_AuditResults.ID = DataFromExcel.AutoNum 
SET  Result = TRUE, Notes = [4 Comment] 
WHERE DataFromExcel.[4] = 1 AND tbl_AuditResults.Param = 4 

有誰知道我怎麼能一次完成所有工作?

回答

0

如果我理解正確,您將會更新不同字段的不同數據集 - WHERE子句將有所不同。

因此答案是否定的。

但是,您可以遍歷字段編號1..19,在VBA中構建相應的SQL,然後使用DB.Execute運行每個SQL。

編輯:該場景聽起來有點像UNPIVOT,但由於Access本身沒有這種情況,循環會更容易。

+0

我有一種感覺,它可能需要一個VBA解決方案,但首先要與世界其他地方進行覈對。我也認爲它看起來很像一個反向數據透視表 - 不知道它存在於其他數據庫中。我還會看看鏈接中提供的解決方案 - 看起來好像也可以。 –