我試圖弄清楚如何使用OutageID = X. 這樣做的目的是在一個陳述句中查看當前中斷和所有修訂以查看所有更改。下面是我正在嘗試的一個例子。但是,它將所有內容放在一排。我希望它像查詢一樣單獨顯示所有行SELECT * From Table WHERE X = Y。
當前中斷在一個表中,而歷史記錄在另一個表中,因此它們不會被覆寫,也不會改變當前資料庫的設計。
中斷表
`strSQL = "SELECT Outages.OutageID, Outages.Outage, Outages.Building,
Outages.OutageType, Outages.OutageStart, Outages.OutageStartTime,
Outages.OutageEnd, Outages.OutageEndTime, Outages.Duration,
Outages.Reason, Outages.Areas, Outages.Comment, Outages.ORN,
Outages.Contact, Outages.Phone, Outages.Job, Outages.Timestamp
FROM Outages
WHERE (((Outages.OutageID)=3305));"`
中斷歷史表
`strSQL = "SELECT OutageHistory.RevisonID, OutageHistory.OutageID,
OutageHistory.Outage, OutageHistory.Building,
OutageHistory.OutageType,
OutageHistory.OutageStart, OutageHistory.OutageStartTime,
OutageHistory.OutageEnd, OutageHistory.OutageEndTime,
OutageHistory.Duration, OutageHistory.Reason, OutageHistory.Areas,
OutageHistory.Comment, OutageHistory.ORN, OutageHistory.Contact,
OutageHistory.Phone, OutageHistory.Job, OutageHistory.Timestamp
FROM OutageHistory
WHERE (((OutageHistory.OutageID)=3305));"`
`Private Sub All_Revision_Histoy_Click()
Dim strSQL As String
strSQL = "SELECT * From OutageHistory WHERE OutageHistory.OutageID = " &
Me.OutageID & ";"
Debug.Print strSQL
ShowDataSheet strSQL`
我認為我可能需要創建一個臨時表并為結果插入兩行,然后在表關閉時洗掉表。但是,我不知道該怎么做。我已經覺得我可能咬掉的東西比我能咀嚼的還多。先感謝您。
uj5u.com熱心網友回復:
select * from (
select 1 as revisionID, Outages.* FROM Outages
WHERE (((Outages.OutageID)=3305))
union
select OutageHistory.* FROM OutageHistory
WHERE (((OutageHistory.OutageID)=3305))
) order by revisionID desc
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/482481.html
