如果您是數據庫新手(或者是經驗豐富的數據庫用戶),需要在開始構建Access 數據庫前了解一些關鍵的概念。Access 數據庫包含了7 種頂級對象,這些對象由使用Access 時所需的數據和工具組成。
表:保存實際數據。
查詢:搜索、排序和檢索特定數據。
窗體:以自定義的格式輸入和顯示數據。
報表:顯示和打印格式化數據。
頁面:在公司內部網發布數據。
宏:不需要通過編程來實現任務的自動化。
模塊:包含使用Visual Basic for Applications (VBA) 編程語言編寫的程序。
1.3.1 數據表
數據表是在Access 中查看數據的方法之一。盡管數據表本身不是數據庫對象,但它卻可以通過類似於財務電子表格或者ExceI 工作表的格式顯示表中的記錄列表。數據表將數據顯示為一系列的行和列(相對Excel 電子表格而言)。數據表還可以用信息的原始形式顯示該信息。數據表視圖是顯示所有記錄中所有字段的默認模式。
可以用鍵盤上的方向鍵在數據表中滾動查看。也可以在數據表內顯示其他表中的相關記錄。另外還可以更改所顯示的數據。
警告:進行更改或者允許用戶修改數據表格式的數據時應該謹慎.更新數據表記錄後,就會永久史改底層表中的數據.
1.3.2 查詢
查詢可以從數據庫中提取信息。查詢可以選擇並定義滿足某一條件的一組記錄。許多窗體和報表都基於查詢,在顯示數據顯示前先對數據進行篩選。另外,經常從VBA 程序中調用查詢來更改、添加或者刪除數據庫記錄。
例如,一個Auto Sales 辦公室員工可要求數據庫"按字母順序顯示出所有居住在Massachusetts州並且已經在過去的半年中購買了一些產品的客戶,並按客戶名對顯示的內容進行排序"或者"顯示出在過去半年中購買了價值3.5 萬美元或以上汽車的所有客戶,並且先按客戶名,然後按汽車價值排序顯示他們"。
不用以英語提出問題,而是用示例查詢(query by example, QBE) 方法。在QBE 設計窗口中輸入指令時,查詢會將該指令轉換為結構化查詢語言( Structured Query Language , SQL) 並檢索所需的數據。第4 章介紹了QBE 設計窗口以及如何構建查詢。
在第一個示例中,查詢首先使用相關的字段Contact ID (表間的公共連接)把來源於Sales 和Contact 表的數據結合起來。然後,檢索名、姓和想了解的其他任何數據。接著Access 開始篩選記錄,只選擇銷售日期在半年以內的值。查詢首先將產生的記錄按照聯系人的姓和名進行排序。最後,記錄就出現在了屏幕上的數據表中。
在第二個例子中也進行了類似的操作E 使用銷售、聯系人、發貨單和產品並且應用的搜索條件是在Description 字段中出現購買的車輛及其Price 宇段中的值大於或者等於3 .5萬美元。運行完查詢後,產生的記錄集可以用窗體的形式顯示在屏幕上或者打印為報表。這樣,用戶訪問的數據將僅限於符合該標准的返回記錄。
1.3.3 數據輸入和顯示窗體
數據輸入窗體可以幫助用戶快速、輕松和准確地將信息輸入數據庫。與數據表相比,數據輸入和顯示窗體提供了更加結構化的數據視圈。通過該結構化視圖可以查看、添加、更改和刪除數據庫記錄。通過數據輸入窗體輸入數據是將數據放入數據庫表最為常見的一種方式。
數據輸入窗體限制了對表中某些字段的訪問。數據添加到數據庫表之前,窗體也可以檢查這些數據的有效性。
多數用戶更偏重於將數據輸入窗體中,而不是在表的數據表視圈中輸入數據。數據輸入窗體有些類似於常用的文件文檔,可以協助用戶完成數據輸入任務。窗體通常可以指導用戶完成正在更新的表中的字段,使數據輸入不言自明。
只能顯示的界面和窗體僅用於查詢目的。這些窗體允許顯示給定表中的某些字段。僅顯示某些字段意味著可以限制用戶訪問敏感數據,同時又允許用戶查詢其他字段。
1.3.4 報表
報表以打印格式來呈現數據。Access 支持幾種不同類型的報表。報表可以列出給定表中的所有記錄(例如客戶表),或者僅列出符合某個標准的記錄,例如居住在Washington 州的所有客戶。通過只選擇報表所需記錄的查詢來完成這種報表。
報表可以結合多種表來呈現不同數據集間的復雜關系。例如打印發貨單。可以訪問客戶表來獲取客戶的名稱和地址(及其他相關數據)並與銷售表中的記錄相關聯,以打印出所定購產品的單個項目信息。接著可以指示Access 來計算總值並將它們以特定的格式在窗體中打印出來。另外,還可以利用Access 將記錄輸出到發貨單報表,這是匯總了發貨單信息的打印文檔。
提示:設計數據庫表時,務必記住要打印的所有信息類型.這樣確保可從數據庫表中得到各類報表中所需的信息.
1.3.5 設計系統的對象
要創建數據庫對象,例如表、窗體和報表,首先要完成一系列稱為設計的任務。設計得越好,應用程序運行的就更好。對設計考慮的越透徹,完成系統時的速度就會越快。設計過程不一定就是壞事,其目的也不是生成大量的文檔。設計一個對象的惟一目的就是生成-個在實施過程中需要遵從的明確路徑。