感謝在其他問題和一些好的教程中收到的幫助,我可以創建我的訪問數據庫以將圖書保存在我的圖書館中,並且現在我有一個很好的窗體(有幾個子窗體)將新書輸入到我的數據庫中。 (這全部基於訪問2003)。
下一步是能夠查詢數據庫並搜索書籍。
我正在考慮採取以下方法,但我不確定這是否可行和/或如果努力會令人望而卻步。事實上,我已經有我自己的擔憂和/或問號。
請您分享您對我的方法的看法,並最終解決我的一些擔憂? (鏈接到解決我的任何問題的其他問題或資源非常好!)
在此先感謝您的任何貢獻!
點1。使用按鈕創建一個控件表單,以執行不同類型的查詢(按作者,標題等);我還想爲整個數據庫提供「自由文本搜索」選項。該表單還將包括輸入搜索條件的字段,例如作者爲搜索作者等等。這些字段應該是自動完成的組合框,以便於搜索用戶。
點2。要執行的不同查詢應該在相應按鈕的點擊事件的vba代碼中被「硬編碼」;這是因爲我發現手動編寫SQL查詢更容易,特別是當我需要從其他字段傳遞參數時;另外,當我可以將它們「存儲」在我的代碼中時,我沒有看到需要在數據庫中分別乘以表單和存儲查詢。
點3。這些查詢的最終結果(記錄集?)應該以表格形式顯示。我將始終選擇要輸出的相同字段,而不考慮執行的查詢,因此應將單個表單用作所有不同查詢的輸出。我想要一個表格,因此我可以一勞永逸地定製它的外觀和行爲。如果可能,表格應爲數據表類型(但這不是一個嚴格的要求)。鑑於搜索標準的差異,我相信查詢結果存儲在易失性表/記錄集中並不是問題,因爲每次請求都必須重新填充查詢結果。
關於第1點的問題。自由文本搜索真的可行嗎?我怎麼能這樣做?
關於第2點的問題。用所有輸入參數構建一個持有SQL查詢的字符串很容易,但是如何運行查詢?我在教程中的搜索困惑了我,我不知道如何做到這一點了。如上所述,我不想單獨存儲查詢,然後引用查詢集合中的特定查詢,而是執行和「SQL字符串」。這是如何完成的?如何將結果存儲在變量中? Recordset是存儲臨時表的正確變量類型嗎?
關於第3點的問題。我如何創建「輸出」表單?我應該創建字段(在設計視圖中)爲未綁定的,還是應該將它們綁定到數據庫中的表中?以及如何用變量中的數據填充表單?考慮到我的數據庫中有多個多對多關係(如作者和書籍),數據庫是否可行?如果我不得不重新做一個形式和子表單,那麼如何將子表單和主表單連接起來,因爲「表格」在設計期間不存在,而只在「運行時間」?而且我也沒有查詢,因爲如上所述,它們在VBA代碼中是不同的和硬編碼的。
P.S.有關信息,所有這些都是作爲「愛好」來完成的,並且爲了通過這樣做來學習新的東西(access和vba)......單個窗體顯示來自多個查詢的輸出
0
A
回答
0
要點1.使用按鈕創建一個控制表單,以執行查詢的不同種類 (按作者,標題等);我還想爲整個數據庫提供 「自由文本搜索」選項。該表格還將包含 包括用於輸入搜索標準的字段,例如作者 用於按作者搜索等。這些字段應該是具有 自動完成功能的組合框,以便於搜索用戶。
您當然可以使用下拉列表填充表單。有一個嚮導。您不能使用下拉菜單在任何位置進行搜索,但有一個方便的搜索按鈕,或者可以連接並使用InStr。
第2點要執行的不同查詢應該在 中「硬編碼」相應按鈕的點擊事件的vba代碼;這 是因爲我覺得更容易手動編寫SQL查詢,尤其是 當我需要從其他字段傳遞參數;再加上我 沒有看到需要將表單和存儲查詢分開放在 DB中,我可以讓它們「存儲」在我的代碼中。
你會看到,把查詢出來的代碼的時候你開始做accdes/MDES
第三點查詢的最終結果(一個記錄集?)然後應 顯示以一種形式。我將始終選擇相同的字段爲 輸出,而不管執行的查詢是什麼,因此單個表單應爲 用作所有不同查詢的輸出。我想要一個形式爲此的原因 ,以便我可以定製其外觀和行爲一次,併爲 所有。如果可能的話,表格應該是數據表的類型(但這不是嚴格要求的 )。鑑於搜索標準的差異,我認爲查詢結果存儲在易變的表/記錄集中是完全不錯的,並且它不是必須在每次請求時重新填充它們的問題。
重新填充會導致膨脹。如果可以,請始終避免MS Access中的臨時表。
相關問題
- 1. SQL查詢顯示來自同一個表的多個記錄?
- 2. 使用來自一個SQL查詢多輸出到另一個
- 3. 在for循環中顯示來自多個變量的輸出
- 4. 顯示來自sql查詢的多個結果
- 5. 顯示來自嵌套查詢的多個結果?
- 6. HTML表單 - 來自一個輸入的多個輸出?
- 7. 顯示來自兩個單獨查詢的結果在一起
- 8. 顯示來自angularfire2的單個項目查詢
- 9. MYSQL - 來自多個查詢
- 10. 輸出多個查詢
- 11. 來自單個輸入的多個scanf
- 12. 來自多個API的一個查詢
- 13. 顯示多個PHP查詢
- 14. 顯示輸出查詢?
- 15. 將多個查詢合併爲單個多行輸出
- 16. 窗體輸入中的多個參數 - 訪問查詢
- 17. TSQL - 來自單個查詢中的DOB的多個計數
- 18. 在窗體上顯示來自3個SQL表的數據
- 19. 查詢與來自窗體和總和
- 20. 有更好的多媒體查詢或單個媒體查詢
- 21. 如何編寫單個查詢以顯示多個輸入的值
- 22. 在SELECT中顯示來自多個值的單個值
- 23. 在VB 2010窗體上顯示輸出
- 24. 如何顯示多個mysql查詢的單個警報消息?
- 25. 來自多個表的MySQL查詢
- 26. 查詢來自多個表的數據
- 27. 來自多個表的PostgreSQL查詢
- 28. 來自多個表的查詢
- 29. 來自SQL查詢的多個結果
- 30. 來自多個表的SQL IN查詢
那麼你會怎麼做呢? – rodedo
而不是什麼?臨時表?您幾乎可以始終構建合適的查詢。只有當失敗時你需要臨時表。當你需要的只是搜索時,它永遠不需要。 – Fionnuala
對不起,也許我沒有考慮過我自己。我正在描述整個想法。你評論了這些觀點,但沒有回答我的疑慮/問題,所以我假定你在考慮整個想法的時候是失敗的,因此我問你應該怎麼做。 – rodedo