Giáo trình Hệ thông tin địa lý - Chương 4: Hệ quản trị dữ liệu Microsoft Access
Bạn đang xem tài liệu "Giáo trình Hệ thông tin địa lý - Chương 4: Hệ quản trị dữ liệu Microsoft Access", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- giao_trinh_he_thong_tin_dia_ly_chuong_4_he_quan_tri_du_lieu.pdf
Nội dung text: Giáo trình Hệ thông tin địa lý - Chương 4: Hệ quản trị dữ liệu Microsoft Access
- Ch−ơng IV. Hệ quản trị dữ liệu microsoft access. 4.1. Những khái niệm cơ sở. 4.1.1. Cơ sở dữ liệu là gì? Một cơ sở dữ liệu là tập hợp những thông tin có quan hệ tới một chủ đề riêng hay một yêu cầu nào đó, nh− theo rõi các đơn đặt hàng của khách hàng hay duy trì một s−u tập âm nhạc. Nếu cơ sở dữ liệu của ta không đ−ợc l−u trên máy tính hay các thiết bị nhớ, ta có thể phải theo rõi thông tin từ nhiều nguồn khác nhau, nh− vậy ta phải tự mình mã hoá và tổ chức dữ liệu. Sử dụng Microsoft Access, ta có thể quản lý tất cả các thông tin trong một file cơ sở dữ liệu duy nhất. Thông qua file này, phân chia dữ liệu của ta ra thành các ngăn chứa đ−ợc gọi là các bảng tables. Việc xem, bổ xung, cập nhật dữ liệu bảng sử dụng các biểu mẫu (forms) trực tuyến; tìm kiếm gọi ra các dữ liệu ta cần, bằng cách sử dụng queries; phân tích hoặc in dữ liệu theo trang in đặc tr−ng sử dụng báo cáo (reports) (hình 4.1) Chứa tất cả thông tin trong một bảng nh−ng lại quan sát ở nhiều hình thức khác nhau Hình 4.1: Table, Form, Query, Report trong Access L−u giữ dữ liệu, tạo ra một bảng cho mỗi kiểu thông tin ta theo rõi. Lấy dữ liệu từ nhiều bảng khác nhau hợp lại với nhau trong query, form, or report, ta xác định mối quan hệ giữa các bảng. Tìm kiếm và lấy dữ liệu cần thiết phù hợp các điều kiện đã đ−ợc chỉ định bao gồm các dữ liệu từ nhiều bảng khác nhau, tạo ra query. Query cũng có thể cập nhật học xoá các bản ghi cùng một lúc và thực hiện bên trong hoặc tính toán thao tác trên các dữ liệu theo ý muốn. 85
- Dễ dàng xem, đ−a vào, thay đổi dữ liệu trực tiếp trong bang, tạo ra form. Khi ta mở một form, Microsoft Access lấy ra dữ liệu từ một hay nhiều tables và biểu diễn trên màn hình sử dụng layout ta lựa chọn trong Form Wizard hay dùng layout do ta tạo ra. Phân tích dữ liệu hoặc biểu diễn chúng bằng một cách nào đó, tạo ra report. Ví dụ, ta có thể in một report hợp nhóm dữ liệu và tính toán tổng số, và một report khác với dữ liệu khác để in th− tín (hình 4.2) Tạo các nhãn th− Tính tổng, lập đTínhồ th ịt ổng số, vẽ đồ thị Giá trị tổng Hình 4.2: Các dạng báo cáo reportTable. 4.1.2. Bảng (Table). Một bảng - table là một tập hợp dữ liệu về một chủ đề nào đó nh− sả phẩm cung cấp. Sử dụng các bảng khác nhau cho mỗi một chủ đề, điều đó giúp ta quản lý có hiệu quả hơn và giảm bớt đ−ợc các lỗi khi nhập dữ liệu. Table đ−ợc tổ chức thành các cột đ−ợc gọi là các tr−ờng (fields) và hàng đ−ợc gọi là bản ghi (records) (hình 4.3) Bảng liệt kê các nguồn cung ứng vật t− Bảng theo rõi các sản phẩm Một tr−ờng chung tạo mối quan hệ giữa hai bảng - Supplier ID Hình 4.3: Cấu trúc của bảng - Table 86
- Field - Tr−ờng: Mỗi một tr−ờng trong bảng theo rõi các sản phẩm (Products table) chứa cùng một loại thông tin cho mọi sản phẩm nh− là tên sản phẩm (product's name). Record - Bản ghi: Mỗi một record trong Products table chứa đựng tất cả các thông tin về một sản phẩm, nh− là tên sản phẩm (product name), số chỉ danh nguồn cung cấp (supplier ID number), đơn vị trong kho (units in stock), và những thông tin khác nữa. Mối quan hệ giữa các bảng: Trong Bảng liệt kê các nguồn cung ứng vật t− (Suppliers table) ta đ−a vào supplier ID, company name, và các tr−ờng khác nữa cho mỗi một nguồn cung cấp. trong Products table ta đ−a cả tr−ờng SupplierID vào, nh− vậy khi ta đ−â một sản phẩm mới vào, ta có thể xác định đ−ợc nguồn cung cấp nó bằng cách đ−a vào số SupplierID duy nhất. Bằng cách khớp SupplierID trong bảng Products và bảng Suppliers, Microsoft Access có thể lấy dữ liệu từ hai bảng kết hợp với nhau để ta xem, chỉnh sửa, in ấn. Thây đổi cách nhìn Sắp xếp hoặc chọn lọc bảng ghi Thêm hoặc xoá các Chỉnh sửa hoặc in bản ghi Thay đổi layout Thêm vào, xoá, của bảng dữ liệu thay đổi tên cột Hình 4.4: Các công cụ thao tác trên bảng Trong bảng dữ liệu, ta có thể thêm vào, chỉnh sửa, hay xem dữ liệu. Ta còn có thể kiểm tra, in dữ liệu, lọc, xắp xếp các bản ghi, thay đổi hình thức thể hiện bảng dữ liệu, hay thay đổi cấu trúc của bảng bằng cách thêm vào hay xoá đi những cột (Hình 4.4). Trong table Design view, ta có thể tạo ra một table hoàn chỉnh từ việc lấy từ các bảng sẵn có, thêm vào, xoá bớt, hay thực hiện theo ý thích các tr−ờng. (Hình 4.5). 87
- Đặt kiểu dữ liệu cho tr−ờng Thêm hoặc đổi tên tr−ờng Chọn khoá chính cho tr−ờng Đặt thuộc tính cho tr−ờng Hình 4.5: Tạo ra một Table mới bằng Table Design View 4.1.3. Biểu mẫu (Form). Ta có thể sử dụng Form vào nhiều mục đích khác nhau nh−: Tạo ra Form nhập dữ liệu vào bảng, tạo ra form trung chuyển để mở form khác hoặc hoặc báo cáo, tạo ra hộp thoại cho ng−ời sử dụng nhập dữ liệu sau đó tạo ra các chức năng dựa theo dữ kiện đó (hình4.6) Tạo ra hộp thoại Tạo ra Form cho ng−ời sử dụng nhập dữ liệu nhập dữ liệu sau đó vào bảng tạo ra các chức năng dựa theo dữ kiện đó Tạo ra Form trung chuyển Hình 4.6: Sử dụng Form vào các mục đích khác nhau Hầu hết thông tin trong form có đ−ợc từ các nguồn ghi nằm nằm d−ới. Những thông tin khác trong form nằm ngay ở phần design của form (hình 4.7). 88
- Form View Các thành phần hình ảnh chứa trong phần Design của Form Số liệu có đ−ợc từ Các các tr−ờng trong các nhãn mô nguồn ghi nằm d−ới tả chứa trong Design Kết quả tính toán từ của công thức chứa trong Form Design của Form Hình 4.7: Những thông tin trong một Form Ta tạo ra và liên kết giữa form và nguồn ghi của nó bằng cách dùng các đối t−ợng đồ hoạ đ−ợc gọi là các điều khiển (controls). Kiểu thông dụng nhất của điều khiển hay đ−ợc dùng để biểu thị dữ liệu nhập vào là text box (hình 4.8). Những nhãn text Design View mô tả nội dung Những text boxes đ−ợc dùng để thể hiện dữ liệu đ−a vào tronng Product Table Text boxe dùng để thể hiện biểu thức tính toán ổ Hình 4.8: Tạo liên kết giữa Form và nguồn ghi nằm d−ới 4.1.4. Truy vấn (Query). Dùng queries để xem, thay đổi và phân tích dữ liệu theo nhiều cách khác nhau. Ta có thể dùngchúng nh− cac nguồn ghi cho các forms và reports. Dùng query để lấy dữ liệu từ nhiều bảng khác nhau và sắp xếp lại theo một trật tự theo yêu cầu. 89
- Làm các phép tính số học, tính toán tổng số số l−ợng, giá trị trung bình, sau đó nhóm các kết quả bằng 2 dạng thông tin một đ−ợc liệt kê từ trên xuống từ trái qua phải, cái kia chéo qua. lấy dữ liệu từ nhiều bảng khác nhau và sắp Thực hiện các tính toán xếp lại theo một trật tự theo yêu cầu trên các nhóm bản ghi Làm các phép tính số học, tính toán tổng số, số l−ợng, giá trị trung bình, sau đó nhóm các kết quả bằng 2 dạng thông tin một đ−ợc liệt kê từ trên xuống, cái kia Hình 4.9: Tạo các Queries Loại thông dụng nhất của Query là select query. Một select query chắt lọc dữ liệu từ một hay nhiều tables dùng tiêu thức do ta chỉ định, sau đó thể hiện nó theo trật tự ta mông muốn (hình 4.10). Khi ta thực hiện query, Access chắt lọc các bản ghi theo cách ta chỉ định sau đó thể hiện dữ liệu đã đ−ợc kết hợp theo trật tự nh− ta mong muốn Hình 4.10: Tạo Select Querie 90
- Ta tạo ra một query bằng cách dùng các h−ớng dẫn (wizard) có sẵn hoặc lấy dữ liệu hỗn hợp trong các biểu khung màn hình Design View. Trong khung màn hình Design View này, ta chọn lấy dữ liệu mà ta muốn xử lý, bằng cách thêm vào các tables hay những queries có chứa dữ liệu, và sau đó bằng cách điền chúng vào khung design (hình 4.11). Danh sach các tr−ờng cho thấy Đ−ờng nối báo cho Access các dữ liệu những tr−ờng trong các tables hay trong table hay query quan hệ với dữ liệu queries ta thêm trong query mới trong table và query khác Thêm các tr−ờng vào khung déign bằng Các tr−ờng, thứ tự và cách kéo tiêu thức ta thêm vào thả chúng từ khung design quyết định danh sách ta sẽ nhìn thấy những gì các tr−ờng trong kết quả query vào Hình 4.11: Tạo Select Querie trong Design View Điểm mạnh của query là chúng có khả năng kết hợp các dữ liệu từ nhiều bảng biểu hoặc các queries khác lại với nhau. Chẳng hạn chúng ta muốn xem thông tin của khách hàng đồng thời với những đơn đặt hàng của những khách hàng này. Để có thể xem các thông tin này, ta cần những dữ liệu từ hai tables Customers và Orders Khi ta thêm nhiều bảng biểu vào một query, ta phải đảm bảo là các danh sách của các tr−ờng đã đ−ợc kết hợp với nhau bằng một đ−ờng liên kết (join line), để Access biết cách liên kết những thông tin này. Đ−ờng liên kết giữa các tables hay queries báo cho Access dữ liệu quan hệ với nhau nh− thế nào. Kiểu của liên kết chỉ ra những bản ghi nào query sẽ lựa chọn hay thực hiện các thao tác. 4.1.5. Báo cáo (Report). Báo cáo là cách có hiệu quả để trình bày dữ liệu theo dạng in ấn. Bởi vì có thể điều chỉnh kích cỡ và trình bày bản báo cáo, ta có thể cho thông tin hiện ra theo ý muốn (xem hình 4.2). 91
- Đa số các thông tin trong report có đ−ợc từ table nằm d−ới, query, hay những câu lệnh SQL, đó là nguồn dữ liệu của báo cáo. Những thông tin khác đều đ−ợc chứa trong design của báo cáo. Tiêu đề và Ngày tháng lấy từ các biểu tên cột chứa thức chứa trong design trong design của báo cáo Dữ liệu lấy từ các tr−ờng của table, query, hay câu lệnh SQL Giá trị tổng lấy từ các biểu thức có trong design của báo cáo Hình 4.12: Thông tin có đ−ợc trong một bản báo cáo Ta tạo ra các liên kết giữa một báo cáo và nguồn bản ghi của chính nó bằng cách dùng các đối t−ợng đồ hoạ đ−ợc gọi là các điều khiển. Các điều khiển có thể là text boxes nó biểu thị các tên, các con số, nhãn biểu thị tiêu đề, và các đ−ờng trang trí kết hợp với dữ liệu làm cho báo cáo lôi cuốn hơn. Đ−ờng trang trí Nhãn tiêu đề Text Box dùng để biểu thị kết quả tính toán giá trị tổng Hình 4.13: Báo cáo và các điều khiển 92
- 4.1.6. Hàm lệnh (Macros) • Marcro là gì? Macro là một tập hợp của một hay nhiều hành động, mỗi hành động thực hiện một tác vụ riêng, nh− mở một form hay in một report. Macros giúp ta thực hiện tự động hoá những tác vụ thông dụng. Ví dụ, ta có thể điều hoạt một macro để in một báo cáo khi ta click và nút lệnh. Khi ta tạo một macro, ta nhập những công việc cần làm vào vị trí này Ta có thể gán các đối số cho các công việc vào vị trí này. Những đối số cung cập những thông tin về cách thực hiện công việc nh− là đối t−ợng hay dữ liệu nào đ−ợc dùng tới Hình 4.14: Macro in hoá đơn Một macro có thể là một lệnh tổng hợp những hành động nối tiếp nhau, hoặc nó có thể là một nhóm macro. Ta có thể dùng biểu thức điều kiện để xác định tr−ờng hợp liệu có hay không một hành động sẽ thực hiện khi macro chạy. Chuỗi hành động theo trình tự. Macro sau đây đ−ợc kết hợp một loạt các hành động. Access thực hiện những hành động này mỗi lần macro chạy. Để chạy macro này, ta phải gọi tên hàm Review Products. Hình 4.15: Macro Review Product • Nhóm hàm lệnh - macro group. Nếu ta có nhiều macros, kết nhóm các hàm lệnh có liên quan với nhau thành nhóm hàm lệnh sẽ giúp ta quản lý cơ sở dữ liệu một cách dễ dàng hơn. để hiện tên các macros trong cùng nhóm, click Macro Names trên View menu trong cửa sổ Macro. Ví dụ, macro group sau đây, mang tên Buttons, đ−ợc tạo bởi 3 macros có liên quan tới nhau: Employees, Products, và Reps. Mỗi macro tải một chức năng OpenForm, và Products macro còn tải Hình 4.16: Macro Buttons cả chức năng MoveSize. 93
- Tên ở cột Macro Name column nhận dạng mỗi macro. Khi ta điều hoạt một macro trong macro group, Access sẽ tải chức năng đó trong cột action và các chức năng khác bất kỳ theo sau mà tên của nó nằm trong cột Macro Name bỏ trống. Để điều hoạt một macro trrong macro group, tr−ớc hết ta đánh tên của macro group theo sau là dấu chấm rồi đến tên macro. Trong ví dụ trên, để điều hoạt, hàm lệnh Employees trong nhóm lệnh Buttons, ta phải gõ Buttons.Employees. • Những hành động có điều kiện - Conditional actions. Để hiện cột Condition column, ta click Conditions trên View menu trong cửa sổ Macro. Macro sau đây điều hoạt MsgBox và StopMacro chỉ khi biểu thức trong cột Condition mang giá trị TRUE (khi biểu thức trong tr−ờng SupplierID mang giá trị là Hình 4.17: Macro có điều kiện NULL). 4.1.7. Khối (Module). • Module là gì? Một module là tập hợp các khai báo (declarations) và thủ tục (procedures) của Visual Basic for Applications đ−ợc chứa chung với nhau nh− là một đơn vị. Khung Object Khung Procedure Các khai báo - Declarations Các thủ tục - Procedures Nút lệnh Procedure View Nút lệnh Full Module View Hình 4.18: Module Utility Function 94
- Có 2 kiểu modules cơ bản, đó là mdule cấp (class modules) và module chuẩn (standard modules). Mỗi thủ tục trong module có thể là thủ tục hàm (Function procedure) hay thủ tụcthứ cấp (Sub procedure). • Class modules. Các khối Form và report modules là các class modules nó đã đ−ợc liên kết với các form và report đặc biệt. Các khôi Form và report th−ờng chứa đựng những thủ tục sự kiện (event procedures) để đáp lại sự kiện trong form hay report đó. ta có thể sử dụng event procedures để kiểm soát cách hoạt động của forms và reports, và đáp ứng những hoạt động sau khi ng−ời sử dụng click chuột trên nút lệnh. Khi ta tạo ra event procedure thứ nhất cho form hay report, Access automatically tự động tạo ra một form hay report kết hợp. Để quan sát module cho một form hay report, click Code trên toolbar ở Design view. Để quan sát hay thêm một thủ tục form chọn một trong những đối t−ợng của form trong khung object sau đó chọn sự kiên trong khung procedure. các tên của những sự kiện đ−ợc in đâm. Hình 4.19: Khối cấp Để quan sát hay thêm một thủ tục form chọn một trong những đối t−ợng của form trong khung object, sau đó chọn sự kiên trong khung procedure. các tên của những sự kiện đ−ợc in đậm. Những thủ tục trong các khối form và report có thể gọi các thủ tục mà ta đã thêm vào trong khối chuẩn. Trong Access 95, class modules chỉ tồn tại khi đ−ợc kết hợp với form hay report. Trong Access 97, class modules có thể tồn tại độc lập đối với form hay report, và kiểu class module đ−ợc liệt kê trên bảng Modules trên cửa sổ Database. Ta có thể dụng class module trên Modules tab để nhận dạng đối t−ợng tuỳ chỉnh (custom object). • Khối chuẩn ( Standard modules). Standard modules chứa những thủ tục chung, nó không đ−ợc liên kết với bất kỳ đối t−ợng nào khác và th−ờng dùng những thủ tục để có thể đ−ợc điều hoạt ở bất kỳ đâu trong cơ sở dữ liệu. 95
- Để thêm thủ tục tuỳ chỉnh vào khối chuẩn, d−ới phần khai báo gõ Sub hoặc Function, theo sau là tên của thủ tục cùng các đối số rồi nhấn Sau đó gõ mã lệnh cho các thủ tục. Hàm Isloaded này có thể gọi từ thủ tục khác bất kỳ Hình 4.20: Khối chuẩn Ta có thể xem danh sách của các standard modules trong database bằng cách click vào Modules tab trong cửa sổ Database. Form, report, và standard modules đ−ợc thống kê trên Object Browser. 4.1.8. Sự kiện (Events): Làm cho các đối t−ợng của cơ sở dữ liệu làm việc cùng nhau. • Events là gì? Sự kiện (Events) là một hành động xảy ra trên hoặc cùng với một đối t−ợng nào đó. Access có thể đáp ứng những sự kiện khác nhau: click chuột, Thay đổi dữ liệu, mở hoặc đóng forms, và rất nhiều điều khác nữa. Sự kiện thông th−ờng là kết quả của hành động của ng−ời sử dụng. Sử dụng thủ tục sự kiện hay macro, ta có thể thêm những đáp ứng vào sự kiện nó xảy ra ở form, report, hay control. Giả thử ta muốn mở form Product Details form, lúc đó ta click lên nút lệnh Product Details trên Orders form. Ví dụ sau đây cho ta thấy làm thế nào với thủ tục sự kiện hay với macro. • Đáp ứng sự kiện Click bằng cách dùng thủ tục sự kiện by using. Khi ta tạ ra một thủ tục sự kiện cho một đối t−ợng, Access thêm vào khối form hay report một khuôn mẫu thủ tục sự kiện đ−ợc với tên cho sự kiện và đối t−ợng. Còn lại cần làm là thêm mã cho form hay report theo cách mà ta muốn khi sự kiện xảy ra. Để tạo cho thủ tục sự kiện khởi chạy khi ng−ời dùng click chuột vào nút lệnh, click vào thuộc tính OnClick của nút lệnh click nút Build, sau đó click Code Builder để thêm mã lệnh Víual Basic cho thủ tục sự kiện Hình 4.21. Tạo cho thủ tục khởi chạy 96
- Macro OpenProductDetails dùng hành động OpenForm để mở form ProductDetails Hình 4.22. Tạo cho thủ tục khởi chạy (tiếp theo) 97