2013-07-19 46 views
1

我一直在尋找解決這個問題的地方,我得出的結論是我可能會問錯誤的問題。我希望有人能回答這個問題,或者告訴我正確的問題。MS Access SQL將數據插入關係表

我有兩個表估計和TakeoffSheet:

+----------------------+ +----------------------+ 
    | Estimates   | | TakeoffSheet  | 
    +----------------------+ +----------------------+ 
    | 1. Estimate_ID = PK | | 1. Sheet_ID = PK  | 
    | 2. Number   | | 2. Estimate_ID = FK | 
    | 3. Estimate_Name  | | 3. Sheet_Name  | 
    +----------------------+ +----------------------+ 

我試圖插入新行Takeoffsheet其中Estimate.Number =什麼的。基本上,在TakeoffSheet和Estimates之間定義了一個關係,但是我不知道如何在Takeoffsheet中插入一個新行,並使用Estimates中的Estimate_ID。至少不在一個SQL語句中。

我知道我可以在多個步驟中完成(首先獲取Estimate_ID,然後添加一個新工作表),但如果可能的話,我寧願在單個語句中執行。在MS Access中是否有「連接」類型的插入?

感謝您的幫助!

回答

0

如果您定義了外鍵,並創建了一個View例如你將可以追加每個SQL的記錄,像

Insert into V_TakeOffSheet (Sheet_Name,[Number],Estimate_Name) values ('Sheet1',1,'Est1'); 

Access將Estimate_ID設置爲NumberEstimate_Name記錄配件,如果這個記錄是不存在將創建它,新Estimate_ID將在TakeoffSheet使用V_TakeOffSheet 。