Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
659,5 KB
Nội dung
Cấu trúc của MicrosoftAccessforWindows 95
T rong các bài trớc chúng ta đã xem qua về cấu trúc của Office 7.0, Word 7.0 và Excel 7.0 dành cho
Windows 95. Trong phạm vi bài báo này chúng ta thử nghiên cứu về cấu trúc của Access 7.0. Cấu trúc
MS Access bao gồm các phần sau: phần ứng dụng (Aplication layer), phần tập tin (File hay còn gọi
nh là Database container) và phần đối tợng (Database objects).
Phần ứng dụng lu trữ các thành phần nh menu, toolbar. Tại đây cũng lu cơ chế xử lý dữ liệu của
Microsoft đợc biết đến dới tên gọi Microsoft Jet Database Engine (Jet Engine) và tất cả các phần bổ
sung (Add-ins) viết bằng Visual Basic cho ứng dụng.
Phần tập tin chứa các đối tợng nh table, query, form, report, macro và module. Phần đối tợng lu chính
bản thân các dữ liệu, các điều khiển OLE của ngời dùng, cũng nh các thủ tục dùng để truy xuất dữ
liệu.
PHầN ứNG DụNG (APPLICATION LAYER)
Trong Access thành phần này đợc dùng để điều khiển giao diện ngời dùng, ngoài ra nó cũng cung cấp
một môi trờng làm việc cho Jet Engine, cơ chế xử lý dữ liệu nòng cốt của Access. Bên cạnh đó phần
ứng dụng còn có bổn phận thực hiện các cuộc gọi đến những th viện (library database), đó là các tập
hợp những thủ tục và add-in đợc viết bằng Visual Basic chuyên cho một vài chức năng bổ sung nào đó.
Khi sử dụng Access theo nhóm, các cấu hình riêng cũng nh những thông tin về bảo mật của ngời dùng
đợc lu trong một tập tin thông tin nhóm (workgroup information file). Dới đây chúng ta sẽ tìm hiểu kỹ
hơn về những phần nói trên.
Microsoft Access và Jet Database Engine
Jet Database Engine cùng với Access hình thành một hệ thống quản lý cơ sở dữ liệu (CSDL) hoàn
chỉnh. MicrosoftAccess là một thành phần của hệ thống này, chịu trách nhiệm về giao diện ngời dùng,
cách ngời dùng xem, chỉnh sửa và xử lý các dữ liệu của mình thông qua các form, query, report, v.và.
Jet Engine chịu trách nhiệm về truy xuất và lu dữ liệu vào các CSDL của ngời dùng (user database) và
của hệ thống (system database). Có thể nói Jet Engine là thành phần quản lý dữ liệu của tổng thể của
cả hệ thống.
Microsoft Access
Đây là "điểm chứa" của giao diện ngời dùng, cũng nh cho toàn bộ các mã của ứng dụng bao gồm các
cấu hình ngầm định cho menus, toolbar, cho các đối tợng của CSDL, kể cả các th viện đi theo với
Access.
Các cấu hình ngầm định: Giao diện của Access có thể thay đổi thông qua mục Options trong menu
tools. Một vài thông số đợc lu trong các Registry của Windows95 (hình 1), còn lại đợc lu trong tập tin
về thông tin nhóm của ngời dùng system.mdw.
Các th viện: Những th viện đi kèm với Access bao gồm các Wizard, Add-in cũng nh tập tin
system.mdw ngầm định
Jet Database Engine
Jet Engine là một cơ chế xử lý có tính quan hệ điều khiển tất cả việc xử lý CSDL cho Access và cả cho
Visual Basic. Với Acces, Jet Engine còn cung cấp các dữ liệu để kết nối với những ứng dụng khác, tức
qua ODBC, Microsoft Open Database Connectivity. Jet Engine thực chất là một nhóm các th viện kiên
kết động *.DLL. Ta hãy cùng tìm hiểu về những th viện này.
Các th viện DLL của Jet Engine:
Th viện MSJT3032.DLL là chơng trình chính đảm nhận việc thực hiện các yêu cầu về dữ liệu. Khi gặp
một yêu cầu về dữ liệu "chuẩn" đợc lu dới dạng thức .MDB (Microsoft Access Database),
MSJT3032.DLL còn điều khiển cả quá trình đọc và ghi dữ liệu. Tuy nhiên khi gặp các dữ liệu "không
chuẩn", nh của Excel hay Foxpro, MSJT3032.DLL có bổn phận gọi ODBC32.DLL, th viện điều khiển
các kết nối với những CSDL không phải của Access hoặc gọi một trong các ISAM DLL ngoại trú.
Chúng ta sẽ tìm hiểu sau về ISAM DLL, th viện liên kết động với lối truy cập dữ liệu trực tiếp theo chỉ
mục (DLL with Indexed Sequential Access Method).
Data Access Objects DLL.
Th viện các đối tợng dùng cho việc truy cập dữ liệu (Data Access Ojects DLL) DAO32.DLL là một
thành phần của Jet Engine. DAO tập hợp các công cụ giúp cho những nhà lập trình tiếp cận với Jet
Engine, nhờ nó họ có thể tránh đợc các bớc chi tiết của việc xử lý các quá trình đọc, ghi dữ liệu khi lập
trình.
Các th viện ISAM DLL.
Jet Encine cung cấp một loạt các th viện liên kết động (ISAM) có khả năng hiểu nhiều kiểu dữ liệu
khác nhau. Những th viện này có thể cài đặt riêng khi có nhu cầu. Bảng dới cho thấy một số dạng thức
đợc hổ trợ bởi ISAM:
Dạng thức ISAM
Hổ trợ nhờ DLL
Xbase (dBase và FoxPro) Msxb3032.dll
Paradox Mspx3032.dll
Lotus Mslt3032.dll
Microsoft Excel Msxl3032.dll
Text Mstx3032.dll
Chính các DLL này điều khiển mọi quá trình đọc, ghi những dữ liệu với dạng thức dBase, FoxPro,
Paradox, Lotus, Microsoft Excel, hay dạng Text.
Library Databases
Th viện là tập hợp các thủ tục mà Access dùng để thực hiện một số thao tác nhất định. Các th viện chỉ
chứa mã đợc viết bằng Visual Basic (cho ứng dụng) và đợc thực thi chỉ khi Access cần đến những thao
tác đấy. Trong th viện không chứa bất kỳ đối tợng nào của CSDL nh table hay form. các th viện này là
những tập tin có phần mở rộng là .MDA. Trớc khi sử dụng chúng ta phải chỉ đến chúng qua mục
References trong menu Tools (khi ở trong cửa sổ Module). Nhờ những reference này, trong một CSDL
hiện hành, chúng ta có thể gọi bằng mã (code) các thủ tục đợc viết trong các CSDL khác (hình 2).
Add-ins
Add-in là những chơng trình đợc viết bằng Visual Basic dùng để bổ sung thêm một số chức năng đặc
biệt cho Access. Các tập tin add-in, tơng tự nh library database, có phần mở rộng là .MDA. Chúng ta
có thể thêm hoặc bớt các add-in bằng cách chọn Add-in Manager trong mục Add-ins trên menu Tools.
Thông thờng các add-in đợc dùng để tự động thực hiện các thao tác phức tạp hoặc có tính lặp lại.
Trong Access có ba nhóm add-in, đó là wizard, builder và menu add-in. Hai nhóm đầu thay đổi tùy
theo mục đích sử dụng (context specific) và đợc gọi trực tiếp trong ứng dụng khi ngời dùng muốn thực
hiện một thao tác cụ thể nào đó, ví dụ nh xây dựng một form, tạo bảng, hoặc tạo một query. Riêng
menu add-in phải đợc gọi qua Add-in Manager trong menu Tools.
Wizards
Wizard cho phép thực hiện nhiều thao tác nhanh và đơn giản, không cần nhiều kiến thức sâu về
Access. Một wizard thông thờng là một chuổi các hộp thoại hớng dẫn ngời dùng từng bớc, từng bớc
thực hiện các yêu cầu hay thủ tục phức tạp. Hình thức hộp thoại của Wizard cho phép ngời dùng dễ
dàng quyết định sự chọn lựa, và xác định đợc hớng tiếp theo để giải quyết vấn đề. Bên cạnh các wizard
của Access chúng ta có thể tự viết các wizard theo ý riêng của mình. Access trực tiếp hổ trợ cho một số
dạng wizard, ví dụ nếu Bạn viết một wizard để thực hiện thao tác tạo form, wizard của Bạn sẽ đợc hiện
trên cùng một danh sách với các wizard của Microsoft Form Wizard. Acces 7.0 hổ trợ cho các dạng
wizard sau:
Wizard bảng và tra vấn (Table và query wizard)
Wizard mẫu và báo cáo (Form và report wizard)
Wizard thuộc tính (Property wizard)
Wizard điều khiển (Control wizard)
Builders
Builder có thể hiểu nôm na nh công cụ xây dựng dữ liệu. Builder đơn giản hơn wizard và thờng đợc thể
hiện dới dạng một hộp thoại hay một bảng mẫu (form) đơn có chức năng dẫn dắt Bạn đi suốt quá trình
thiết kế các biểu thức hay các thành phần dữ liệu đơn lẻ. Expression Builder là một ví dụ về loại Add-
in này (hình 3).
Access 7.0 hổ trợ các dạng Builder sau:
Builder thuộc tính (Property builders)
Builder điều khiển (Control builders)
Builder biểu thức (Expression builders)
Tơng tự nh Wizard, nếu bạn tạo Builder mới thuộc một trong các nhóm trên, tên của builder mới sẽ đ-
ợc thể hiện trên cùng một danh sách với các builder khác của Access.
Menu Add-ins
Có thể nói menu add-ins là những ứng dụng nhỏ đi kèm theo Access để thực hiện một số các chức
năng tổng thể, không có tính thay đổi theo ngữ cảnh nh trờng hợp của wizard và builder. Mỗi menu
add-in thờng thực hiện trên nhiều đối tợng hoặc trên chính bản thân Access. Access Documentor (hình
5) là một trong những ví dụ về menu add-ins (xem mục Analyze\Documentor trong menu Tools).
Chúng ta có thể xem các menu add-in bằng cách chọn Add-ins trong menu Tools, gồm: Switchboard
Manager, Add-ins Manager, Database Splitter, Linked Table Manager, Menu Builder (Hình 4).
Workgroup Information File
Khi chúng ta sử dụng chức năng bảo mật nhóm hay cá thể trong Access, các thông tin về cá thể hoặc
nhóm đợc lu trong tập tin system.mdw, còn đợc gọi là workgroup information file, tập tin thông tin
nhóm. Trong tập tin này còn chứa các thông số về tùy chọn của mỗi ngời dùng (nh toolbar, option). Lu
ý tập tin system.mdw cần cho Access khi khởi động.
Những ngời dùng muốn làm việc chung trong nhóm để chia sẻ dữ liệu, cần sử dụng Workgroup
Administrator, wrkgadm.exe, để xác định tập tin system.mdw nào trên mạng họ muốn dùng khi khởi
động Access. System.mdw này cũng lu các mật mã của mỗi ngời dùng khi đăng ký vào tài khoản.
Trong trờng hợp Bạn không thuộc một nhóm nào cả và do đó không xác định tập tin system.mdw nào,
Access sẽ sử dụng system.mdw trên máy local với các cấu hình bảo mật ngầm định (xem trong
registry Hkey_Local_Machine\Software\Microsoft\Access\7.0\Jet\3.0 \Engines\Jet, dòng giá trị cho
SystemDB.
CƠ Sở Dữ LIệU(DATABASE LAYER)
Trong Access dữ liệu đợc lu trong các bảng của cùng một CSDL. Tuy nhiên chúng ta có thể thực hiện
nối kết với nhiều nguồn dữ liệu ngoài nh: dữ liệu từ bảng của một CSDL khác của Access, dữ liệu với
các dạng thức khác (nh Excel, Dbase, paradox, v.và) hay dữ liệu từ một nguồn ODBC nh SQL Server.
Những liêÔn kết này đợc lu trong phần tập tin và chúng hoạt động nh những bảng bình thờng khác của
CSDL.
ISAM DLL
Trong Access những dữ liệu nằm ngoài CSDL chính đợc truy cập thông qua các bảng dò tìm (lookup
table) dới sự chỉ đạo của các ISAM DLL (DLL with Indexed Sequential Access Method), là các th viện
liên kết động với lối truy cập dữ liệu trực tiếp theo chỉ mục. Với các th viện có thể cài đặt đợc này
(Instalable ISAM DLL), Access xử lý những dữ liệu "không Access" nh những dữ liệu bình thờng của
nó. Duới đây là danh sách các loại dữ liệuAccess có thể hổ trợ thông qua ISAM:
Microsoft FoxPro, phiên bản 2.0, 2.5, 2.6. Riêng FoxPro 3.0 chỉ hổ trợ nhập/xuất, không thực hiện đợc
các liên kết (links)
dBase III PLUS, dBase IV, và dBase V
Paradox, phiên bản 3.x, 4.x, và 5.x
Microsoft Excel, phiên bản 3.0, 4.0, 5.0 và 7.0
Lotus 1-2-3, phiên bản 2.x, 3.x, và 4.0
Các tập tin dạng text (với độ rộng cố định và kích thớc vừa phải )
Ngoài ra Access còn có thể sử dụng dữ liệu từ các nguồn khác nh:
Microsoft SQL Server, Sybase SQL Server, và Oracle Server (nói chung dữ liệu của các ứng
dụng hổ trợ Microsoft ODBC)
MicrosoftAccess 1.x, 2.0, và 7.0 (dữ liệu của các CSDL khác với CSDL đang đợc mở)
Về chi tiết Access hổ trợ hai phơng thức truy cập đến dữ liệu bên ngoài: liên kết đến bảng và mở bảng
trực tiếp.
Liên kết đến bảng (Linked Tables)
Phơng pháp này thờng đợc hay sử dụng nhất để truy cập đến dữ liệu bên ngoài. Bất kỳ thay đổi gì
trong bảng đều ảnh hởng ngay đến bảng đợc kết nối. Khi dùng các bảng liên kết Access tạo một biểu
tợng trên cửa sổ CSDL, nhờ đó khi cần Bạn có thể truy xuất nhanh đến chúng. Ưu điểm của phơng
pháp liên kết bảng là dữ liệu luôn đợc cập nhật, các liên kết đợc duy trì không phụ thuộc dữ liệu lấy
trực tiếp từ bảng hay yêu cầu. Nếu các bảng đợc chuyển qua SQL server, ứng dụng của Bạn vẫn có thể
truy cập đến dữ liệu qua liên kết.
Mở bảng trực tiếp (Direct Table Opening)
Khi làm việc với giao diện Access, Bạn không thể mở một bảng thuộc CSDL khác với CSDL hiện
hành. Access chỉ cho phép mở bảng của một CSDL khác thông qua mã Visual Basic. Bằng cách này
Bạn có thể truy cập đến dữ liệu bên ngoài, tuy nhiên thờng ngời ta chỉ áp dụng phơng pháp này cho
những dữ liệu mà chỉ thỉnh thoảng mới cần đến. Hạn chế của phơng pháp này là sự phụ thuộc ứng
dụng của Bạn vào dữ liệu nguồn. Trong trờng hợp bảng đợc chuyển qua SQL server, dữ liệu không còn
là dữ liệu có thể truy cập trực tiếp theo chỉ mục nữa, và do đó ứng dụng sẽ gặp lỗi khi cố gắng mở
bảng trực tiếp.
Kết nối ODBC
Access cho phép truy cập dữ liệu từ các nguồn hổ trợ ODBC. Chuẩn kết nối theo phơng pháp mở
ODBC thờng đợc sử dụng khi kết nối với các hệ quản lý CSDL kiểu khách/chủ (client/server). Access
7.0 có sẵn các driver này cho SQL Server. Ngoài ra chuẩn ODBC còn cho phép kết nối đến các CSDL
dạng non- server và đến các bảng tính (worksheet). Thêm vào đó, trong ứng dụng Access, Bạn còn có
thể sử dụng các yêu cầu dạng SQL Pass-through (SPT) để truy xuất dữ liệu. Những yêu cầu này cho
phép làm việc trực tiếp với bảng trên máy chủ mà không cần sử dụng đến các liên kết, hoặc chạy các
thủ tục đợc lu trên máy chủ. Điểm bất tiện của ứng dụng dùng SPT là tính không cơ động, ví dụ ứng
dụng viết cho SQL server sẽ không chạy đợc khi cố kết nối vào server của Oracle. Nếu muốn tạo các
yêu cầu SPT, Bạn chọn mục SQL Specific trên menu Query, sau đó chọn Pass-Through.
Tách rời dữ liệu khỏi
ứng dụng viết bằng Access có thể đợc lu rời với các dữ liệu. Một ví dụ điển hình là hai CSDL
Orders.mdb và Nwind.mdb có sẵn trong Access (nếu khi cài đặt Bạn có chọn cài phần Sample). Các
form, query, report đợc lu trong Orders.mdb, còn các bảng chứa dữ liệu cụ thể đợc lu trong
Nwind.mdb.
Đây là một phơng pháp hay dùng khi phát triển các ứng dụng bằng Access, nó cho phép dễ dàng quản
lý cả ứng dụng lẫn dữ liệu khi cần nâng cấp lên phiên bản mới, hoặc cho phép các ngời dùng với các
phiên bản khác nhau của Access sử dụng chung dữ liệu.
PHầN ĐốI TƯợNG (DATABASE OBJECTS)
Các đối tợng của CSDL (table, form, query, report, macro và module) đợc lu trong phần tập tin, đây
cũng chính là tập tin với phần mở rộng .mdb. Dới đây chúng ta thử tìm hiểu thêm về những đối tợng
này.
Bảng (Table)
Bảng chính là chổ lu trữ các dữ liệu của CSDL. Chúng ta có thể tạo riêng từng bảng cho từng chuyên
mục cầạn lu dữ liệu. Ví dụ bảng Company để lu thông tin về các công ty, bảng Product để lu thông tin
về các sản phẩm, v.và. Dữ liệu của bảng có thể thay đổi theo hai cách: trực tiếp ngay trong bảng, thông
qua biểu mẫu.
Yêu cầu (Query)
Thông thờng chúng ta lấy dữ liệu từ CSDL theo các yêu cầu khác nhau, ở đây yêu cầu hiểu theo nghĩa
đúng của nó. Còn trong Access Yêu cầu hay Query là một khái niệm. Những query này đợc Jet Engine
xử lý. Dạng đơn giản nhất của query là Select Query, yêu cầu kiểu lựa chọn. Chúng ta tự xác định các
tiêu chuẩn cần thiết và Access lựa ra cho chúng ta những dữ liệu đáp ứng các điều kiện này (hình 6).
Các dữ liệu này đợc gọi là dữ liệạu động (dynaset) đợc thể hiện dới dạng bảng. Nh vậy, ở đây cần phân
biệt hai loại "bảng": một là bảng Table chứa dữ liệu thật sự của CSDL và bảng Datasheet, chỉ là kiểu
thể hiện động (dynamic view) của dữ liệu kết quả từ một query.
Khi Bạn mở một query dới dạng datasheet view, một form hay một report trên nền query, Access sẽ tạo
một tập hợp dữ liệu động dựa trên thông tin lu trong CSDL, nhờ đó Bạn có thể thay đổi, thêm bớt
chúng. Những thay đổi này sẽ có tác dụng với các bảng tơng ứng.
Biểu mẫu (Form)
Form là hình thức thờng dùng nhất để nhập, trình bày và in ấn dữ liệu trong Access. Form có thể chứa
số liệu, văn bản, hình ảnh, màu sắc, các điều khiển OLE, v.và (hình 7). Cách thể hiện của form đợc
điều khiển bởi các form template, biểu mẫu khuôn.
Các điều khiển OLE
Nếu Bạn quen với các điều khiển OLE của Visual Basic (VBX) thì sẽ dễ dàng nhận ra những điều
khiển này trong Access, chúng có tên là OCX. Những OCX này đợc dùng để thêm các tính năng phụ
vào form và đợc lu thẳng trong form (hình 8). Access 7.0 có các điều khiển OLE đi kèm nh sau:
Calendar (msacal70.ocx) , Spin Box (spin32.ocx), Data Outline (msdbout.ocx), v.và . Để sử dụng các
điều khiển OLE hãy chọn trên menu Insert\Custom Control điều khiển OLE Bạn cần, Access sẽ chèn
điều khiển vào form. Trong trờng hợp điều khiển cha đợc khai báo Bạn hãy khai báo chúng bằng cách
chọn Tools\ Custom Control, chọn tên của điều khiển và nhấn vào nút Register.
Báo cáo (Report).
Báo cáo là hình thức trình bày dữ liệu theo ý muốn của ngời dùng trớc khi in ra. Dữ liệu đợc lấy từ
bảng hoặc các yêu cầu. Thông thờng Bạn hay sử dụng yêu cầu để tổng hợp dữ liệu từ nhiều bảng khác
nhau, để cho ra những báo cáo có tính thuyết phục. Cách định dạng và tổ chức của một báo cáo đợc
các Report template điều khiển.
Macro.
Macro là tập hợp những lệnh thờng đợc dùng khi cần tự động hóa một hay nhiều thao tác liên tiếp.
Trong Access Bạn có thể dùng macro để thực hiện thao tác trên form, query, report, trên các điều
khiển.
Module.
Module trong Access là một tập hợp các khai báo (declaration), các câu lệnh (statement) hay các thủ
tục (procedure). Bạn có thể lu nhiều thủ tục liên quan trong cùng một module. CSDL của Acces có các
dạng module nh global, form và report (hình 9):
Global module mang tính toàn cục, có thể sử dụng mọi nơi trong CSDL. Những global module đợc nạp
khi Bạn khởi động Access.
Form module liên kết với form cụ thể và đợc nạp mỗi khi Bạn mở form.
Tơng tự form module, report module liên kết với report cụ thể và đợc nạp mỗi khi Bạn mở report.
Form và Report template
Khi Bạn tạo một form hay report mà không dùng đến form, report wizard, Access sử dụng một
template để thiết đặt các giá trị ngầm định ban đầu của form, report (kích thớc, vị trí các thành phần,
v.và). Template này có tên là Normal template. Bên cạnh đó Bạn cũng có thể sử dụng bất kỳ form hay
report có sẵn nào nh một template. Trong mục Options chúng ta có thể chọn template để dùng khi tạo
form hay report, những thông số của template sẽ đợc lu trong tập tin system.mdw và nó sẽ có tác dụng
với bất kỳ CSDL nào mà Bạn mở hoặc tạo mới. Template có thể sao chép hoặc xuất (export) sang các
CSDL khác.
Tóm lại form và report template xác định các chi tiết sau:
Vị trí các tiêu đề của form và report (form, report header và footer)
Vị trí các tiêu đề của trang (page header, page footer).
Kích thớc các vùng trên form, report.
Các thuộc tính điều khiển ngầm định (control default properties).
CáC THàNH PHầN CủA ACCESS LƯU ở ĐÂU?
Các thành phần của Access đợc lu cùng với phần ứng dụng, với add-in hoặc trong registry của
Windows 95. Bảng dới cho thấy các thành phần và vị trí của chúng:
Thành phần Vị trí lu
Bảng (Table) Trên đĩa trong tập tin CSDL (*.mdb)
Yêu cầu (Query) Trên đĩa trong tập tin CSDL (*.mdb)
Biểu mẫu (Form) Trên đĩa trong tập tin CSDL (*.mdb)
Báo cáo (Report) Trên đĩa trong tập tin CSDL (*.mdb)
Macro Trên đĩa trong tập tin CSDL (*.mdb)
Module Trên đĩa trong tập tin CSDL (*.mdb)
Các điều khiển OLE Trong các form hoặc report sử dụng những điều
khiển này
Mật mã của ngời dùng (User password) Trong tập tin system.mdw
Thông tin về quyền truy xuất đến dữ liệu
của ngời dùng có bảo mật (Permissions for
security accounts) Trên đĩa trong tập tin CSDL (*.mdb)
Cấu hình của toolbar Trong tập tin system.mdw
Cấu hình của menu Trong tập tin system.mdw
Các tùy chọn của ngời dùng trong mục
Options trên menuTools1 Trong registry của Windows 95
Cấu hình cho AutoCorrect Trong registry của Windows 95
Tự điển ngời dùng Trong tập tin Custom.dic
Các kiểu định dạng tự động của AutoFormat Trong AutoFormat Wizard
Công cụ xây dựng biểu thức (Expression
Builder)
Trong tập tin Utility.mda
Công cụ AutoDialer Trong tập tin Utility.mda
Normal template cho form và report Trong tập tin Utility.mda
Công cụ Zoom Box Trong tập tin Utility.mda
Công cụ Save Output As Trong tập tin Utility.mda
Cấu hình bảo mật của CSDL đợc lu ở đâu
Các cấu hình bảo mật đợc lu ở nhiều nơi khác nhau tùy thuộc ngời dùng thiết lập cho CSDL của mình
những chế độ bảo mật nào. Access cho phép sử dụng hai chế độ sau: bảo mật bằng mật mã, bảo mật
bằng cách cấp quyền truy cập theo nhiều mức độ khác nhau.
Bảo mật bằng mật mã (Password Security) Phơng pháp này cho phép truy cập hoàn toàn đến CSDL
nếu Bạn biết mật mã của nó. Để thết lập mật mã Bạn vào menu Tools chọn mục Security. Mật mã này
đợc lu trong tập tin CSDL *.mdb
Cấp quyền truy cập theo mức độ (User-level Security) Phơng pháp này cho phép Bạn dễ dàng thiết lập
mức độ truy cập đến các đối tợng khác nhau của CSDL cho nhiều ngời dùng khác nhau. Những thông
tin nh tài khoản ngời dùng, mật mã kiểm tra, tên nhóm đợc lu trong tập tin system.mdw. Nếu ngời
dùng tách khỏi nhóm, thông tin về họ trong system.mdw sẽ bị xóa đi và do đó sẽ không còn quyền
truy cập đến CSDL.
Các quyền thật sự trên những đối tợng khác nhau (form, table, query, v.và) đợc lu trong bản thân
CSDL. Chúng đợc liên kết đến từng đối tợng theo quy định của ngời quản lý CSDL (database security
administrator). Bạn có thể gán quyền cho từng ngời dùng riêng biệt hoặc cho nhóm (hình 10).
CAáCH ACCESS GIAảI QUYÊếT CAáC XUNG ĐÔộT
Trong Access 7.0, Microsoft cung cấp cho những nhà quản lý CSDL một công cụ rất hữu ích: database
replication, có thể hiểu nh công cụ tạo bản sao CSDL cho những mạng làm việc theo mô hình phân
tán. Với công cụ này, ngời quản lý có thể tạo những bản sao của CSDL hiện hành, cho phép nhiều ngời
dùng cùng một lúc làm việc với CSDL. Trên thực tế mỗi ngời làm việc với bản sao CSDL (replica) của
mình, các replica này có thể nằm trên các máy khác nhau, trong những văn phòng khác nhau và thậm
chí tại những nớc khác nhau mà vẫn duy trì đợc sự đồng bộ trong dữ liệu. Việc đồng bộ dữ liệu giữa
các replica có thể thực hiện theo lịch sắp xếp của ngời dùng theo lệnh qua mạng hoặc modem.
Tại sao cần đồng bộ CSDL?
Xét theo một góc độ lý tuởng, các ngời dùng trong một công ty đều muốn có khả năng truy xuất đến
một CSDL trung tâm, ai cũng muốn sử dụng những dữ liệu mới nhất, hoàn thiện nhất trên đó. Tất cả
ngời dùng khi đó có nhu cầu kết nối với máy chủ 24 tiếng mỗi ngày, 7 ngày mỗi tuần. Và công ty khi
ấy cần có một hệ thống mạng hoàn chỉnh với đầy đủ chức năng bảo vệ và tự khắc phục mọi sự cố
không những cho trung tâm mà còn phải cho tất cả các chi nhánh của nó. Thế nhng đâu phải lúc nào
chúng ta cũng có điều kiện tạo nên những điều "lý tuởng", trên thực tế nhân viên trong công ty có thể
công tác ở xa nhiều hơn tại văn phòng, hệ thống mạng có thể không cho phép cùng lúc kết nối toàn bộ
các chi nhánh, hay không đủ khả năng làm việc ở mức độ "căng thẳng" nh vậy, CSDL trung tâm có thể
h hỏng, máy chủ có thể gặp trục trặc vì virus, hoặc vì khả năng tài chính không đủ để trang bị một
"siêu hệ thống" nh ý muốn nói trên, v.v. Để góp phần đạt đợc sự đồng bộ hóa dữ liệu cho một thực tế
dữ liệu "trung tâm hóa" và ngời dùng "phân tán", Microsoft Jet Engine cung cấp cho chúng ta những
công cụ với ít nhất 6 u điểm nh sau:
Chia sẻ và đồng bộ dữ liệu giữa các văn phòng
Chia sẻ và đồng bộ dữ liệu giữa các ngời dùng ở xa nhau
Hạn chế truy cập đến dữ liệutại trung tâm nhng vẫn đảm bảo tính đồng nhất của dữ liệu
Dễ dàng trong việc phân phối các nâng cấp của ứng dụng
Phân bổ hợp lý việc kết nối mạng với máy chủ
Khả năng sao lu dữ liệu
Công cụ thực hiện đồng bộ hóa
Có tất cả bốn công cụ giúp Bạn thực hiện việc đồng bộ hóa dữ liệu:
Briefcase replication Windows95 cho phép sử dụng chức năng đồng bộ hóa dữ liệu khi ngời dùng kéo
và thả các tập tin vào biểu tợng Briefcase trên desktop. Khi tập tin là một CSDL của Access nó sẽ đợc
chuyển sang dạng replica, tức bản sao của CSDL, còn bản gốc đợc gọi với tên là Design Master thì vẫn
còn nguyên ở chổ cũ. Ngời dùng có thể mang bản sao này trên Laptop đi khắp nơi tùy theo nhu cầu
công việc, rồi sau đó họ sẽ đồng bộ hóa những thay đổi trong bản sao này với bản gốc. Ngợc lại những
thay đổi về dữ liệu trên bản gốc trong thời gian họ đi vắng cũng sẽ đợc cập nhật đồng thời khi họ vào
briefcase.
Nh vậy những ngời dùng khác cũng có khả năng đồng bộ hóa dữ liệu thông qua briefcase. Quá trình
đồng bộ hóa dữ liệu có thể tiến hành theo nhiều hớng: từ bản sao lên bản gốc (nếu Bạn đợc cấp
quyền), từ bản gốc lên bản sao hoặc từ cả hai phía (hình 11). CSDL sau khi chuyển sang dạng replica
thờng có kích thớc lớn hơn so với dạng thờng vì Access đa thêm vào các đối tợng những trờng bổ sung
để phân biệt đối tợng nào trong CSDL là replicated hay local, v.v.
Đồng bộ hóa dữ liệu trong AccessforWindows95. Để đồng bộ dữ liệu trong Aceess 7.0 Bạn có thể
chọn trực tiếp mục Replication trên menu Tools. Lần đầu tiên Bạn cần tạo bản sao với "Create
Replicaà", sau đó có thể cập nhật dữ liệu với các bản sao khác trong Replica Set với "Synchronize
Nowà", giải quyết các xung đột nếu có giữa các bản sao với "Resolve Conflictsà", hoặc tạo Design
Master mới từ một replica với "Recover Design Master". Ơở đây chúng ta cần phân biệt sự khác nhau
giữa từ "bản sao", "bản copy" thông thờng (tức khi Bạn làm một bản lu dự phòng với thao tác copy hay
backup bình thờng trên đĩa) với từ "bản sao", "replica" của Access với khả năng đồng bộ hóa dữ liệu
giữa chúng. AccessforWindows95 còn hổ trợ việc đồng bộ hóa dữ liệu khi chạy trên nền Windows
NT 3.51.
Replication Manager. Trong trờng hợp cần quản lý số lợng lớn các replica, hổ trợ cho ngời dùng
laptop tức những ngời không phải luôn luôn nối với máy chủ, tạo replica từ nhiều CSDL khác nhau,
thiết lập thời gian biểu cho việc đồng bộ hóa dữ liệu, để theo dõi và can thiệp kịp thời khi có sự cố,
Bạn có thể dùng công cụ Replication Manager trong Access Developer Toolkit. Công cụ này cho phép
chuyển đổi CSDL thành Design Master, tạo các replica mới, theo dõi quan hệ giữa các replica (hình
12), thiết lập thuộc tính hoặc thời gian đồng bộ dữ liệu giữa replica với Design Master (hình 13), v.v
Đồng bộ dữ liệu qua lập trình DAO. Hầu hết chức năng đồng bộ dữ liệu qua briefcase đều có thể sử
dụng thông qua lập trình DAO - data access object. Nếu các nhà cung cấp phần mềm thiết kế các ch-
ơng trình quản lý CSDL cho Bạn có đi kèm công cụ đồng bộ dữ liệu, hẳn họ đã sử dụng chức năng lập
trình thông qua DAO để bổ sung những tính năng này vào ứng dụng của họ. Bạn có thể tìm hiểu thêm
về DAO qua các tàiliệu về xây dựng ứng dụng với AccessforWindows95.
Kiến trúc của việc đồng bộ hóa CSDL
Để sử dụng có hiệu quả việc đồng bộ hóa dữ liệu của một CSDL Bạn cần am hiểu về kiến trúc cũng
nh cách hoạt động của mỗi thành phần trong quá trình đồng bộ. Cơ chế đồng bộ trong Jet Engine bao
gồm bốn thành phần chính nh sau:
CSDL không đợc đồng bộ hóa (Nonreplicable database)
Tập hợp các bản sao (Replica Set)
Thành viên của tập hợp (Members of Replica Set)
Thành phần vận chuyển (Transporter)
Có hai dạng xung đột trong việc đồng bộ hóa CSDL: các xung đột phát sinh khi các replica trong
CSDL đợc bắt đầu đồng bộ gọi là xung đột đồng bộ (replication conflict), xung đột phát sinh khi nhiều
ngời dùng đồng thời muốn thay đổi sửa chửa cùng một record trong CSDL đợc gọi là xung đột chế độ
bảo vệ (locking conflict). Ta hãy cùng xem xét các trờng hợp này.
Xung đột đồng bộ
Trong quá trình thiết lập replica, ví dụ khi Bạn kéo CSDL có sẵn và thả vào Windows95 briefcase, Jet
Engine sẽ yêu cầu một hệ thống chỉ mục thống nhất toàn cục từ phía hệ điều hành (Globally Unique
ID, GUID) liên kết với từng dòng dữ liệu trong Design Master (hình 14). Các chỉ mục GUID này sẽ đ -
ợc chép cho từng replica trong CSDL. Nếu có sự thay đổi về dữ liệu trong Design Master hoặc trong
một replica nào đó thì chỉ mục sẽ nhảy thêm một giá trị, và khi ấy Access dễ dàng kiểm tra dòng nào
có sự thay đổi bằng cách so sánh giá trị chỉ mục của mỗi dòng, xác định nội dung thay đổi và sau đó
cập nhật cho các replica còn lại.
Nếu cùng lúc trong hai replica có sự thay đổi trên cùng một dòng thì Access sẽ chọn dựa trên nguyên
tắc sau:
Chọn replica có giá trị chỉ mục dòng bị thay đổi cao hơn. Bởi vì mỗi khi dòng có sự thay đổi
chỉ mục của nó sẽ nhảy nh đã nêu ở trên.
Nếu hai dòng có cũng giá trị chỉ mục Access sẽ chọn ngẫu nhiên, bởi vì theo logic đồng bộ
Access không thể xác định dữ liệu trong dòng nào sẽ là dữ liệu đúng. Trong trờng hợp này ngời
dùng có dữ liệu bị "từ chối" sẽ đợc Access thông báo thông qua Conflict Wizard, và họ có ph-
ơng án chọn lựa: chấp nhận thay đổi hay không chấp nhận.
Xung đột bảo vệ
Một khi thuộc tính record đợc đặt là không bảo vệ hay không khóa (No Locks) sẽ có khả năng xảy ra
xung đột khi nhiều ngời dùng cùng chỉnh sửa và lu một record. Trong trờng hợp này có thể khắc phục
bằng cách thiết lập các chế độ khóa record khác nhau nh khóa toàn bộ các record, khóa các record
đang đợc hiệu chỉnh trong mục Options trên menu Tools, chọn tab Advanced (hình 15). Chế độ No
Locks cho phép nhiều ngời cùng chỉnh sửa một record, nhng record sẽ bị khóa ngay tại thời điểm nó
chuẩn bị đợc lu, do đó dẫn đến thông báo xung đột.
Khi hai ngời cùng lu record, Access sẽ gởi một thông báo cho ngời thứ hai (tức ngời bị trễ hơn). Ngời
này có thể loại bỏ những thay đổi của họ trên record, copy nó vào clipboard hay chấp nhận thay đổi từ
phía ngời đầu tiên. Bằng cách này họ có thể sau đó ghi đè những thay đổi của mình lên những thay đổi
của ngời khác.
Bên cạnh những điều đã nêu ở trên có thể nhận thấy một điểm nh sau: hầu hết những hệ dùng để thiết
kế các ứng dụng quản lý CSDL, bao gồm cả dBASE và Paradox, đều lu những thành phần của CSDL
nh bảng, báo cáo hoặc biểu mẫu dới dạng những tập tin riêng biệt. Một ứng dụng hoàn chỉnh có thể
chứa đến hàng trăm tập tin lẻ nh vậy. Trong Access thì trái lại, tất cả các tập hợp của bảng, biểu mẫu,
báo cáo, macro hay các module đều đợc lu trong cùng một tập tin .MDB. Và chúng ta có thể đặt cho
chúng những tên dài, dễ hiểu nh Sale Report For Current Month hay Productõs Inventory Report mà
không sợ bị hạn chế bởi giới hạn tên 8.3 của DOS. Tuy vậy Bạn vẫn có thể làm việc với các đối tợng đ-
ợc lu trữ trong các CSDL khác nhau, ví dụ nh Bạn có thể lu bảng trong một CSDL và các biểu mẫu hay
báo cáo trong một CSDL khác.
Trên đây chúng ta đã cùng xem qua một số đặc điểm về cấu trúc của AccessforWindows95. Trong
kỳ tới chúng ta sẽ tìm hiểu về cấu trúc của Microsoft Powerpoint 7.0.
Hình 1. Các thông số về giao diện của Access trong registry
Hình 2. Reference đến các th viện
Hình 3. Expression Builder của Access
Hình 4. Cửa sổ của Add-in Managerá
H×nh 5. Database Documentor
H×nh 6. Giao diÖn cña Select Query ë chÕ ®é thiÕt kÕ
H×nh 7. Form trong Access
H×nh 8. Form sö dông ®iÒu khiÓn OLE Calendar
H×nh 9. Module trong Access
H×nh 10. CÊp quyÒn cho ngêi dïng hoÆc cho nhãm
H×nh 11. §ång bé d÷ liÖu víi briefcase
H×nh 12. Replication Manager
H×nh 13. ThiÕt lËp thêi gian ®ång bé d÷ liÖu¸
[...]... folder chứa Add-in A Folder System trong Windows Folder Windows Theo các đờng dẫn bạn cài sẵn trên máy bằng lệnh PATH, ví dụ PATH = C:\; C:\APPS; v.v Trên đây là một số nét về kiến trúc của Microsoft Excel 7.0 trong môi trờng Windows95 Hy vọng bài báo sẽ đem lại cho các bạn những thông tin bổ ích Trong kỳ tới chúng ta sẽ tìm hiểu về kiến trúc của Microsoft Access 7.0 ... tự động (autoformats for charts) Thay vì định dạng từng phần nhỏ của biểu đồ, bạn có thể thay đổi dễ dàng và nhanh chóng cách trình bày biểu đồ của mình bằng cách chọn AutoFormat Excel lu các dạng biểu đồ AutoFormat mẫu trên một sheet biểu đồ riêng trong workbook có tên là Xl5galry.xls Mổi AutoFormat là một trong 14 dạng biểu đồ định sẵn, và có thể có thêm chú thích, kiểu đờng kẻ, nhãn dữ liệu, tổ hợp... xếp, v.và Excel chỉ có 14 AutoFormat đi kèm, tuy nhiên lại cho phép bạn tạo thêm các AutoFormat của mình bằng cách chọn User-Defined, chọn Customize trên hộp thoại AutoFormat Sau khi tạo một loạt các biểu đồ AutoFormat mẫu, hãy lu chúng trong một workbook Khi bạn lu tập tin, những Autoformat tự tạo sẽ đợc lu vào Xl5galry.xls Để những ngời khác trên mạng dùng chung các AutoFormat này, hãy làm một trong...Hình 14 Access thêm các thông tin phụ khi Bạn tạo replica Hình 15 Các tùy chọn để khóa record Cấu trúc của Microsoft Word forWindows95 Cấu trúc của Microsoft Word (MS Word) bao gồm 3 thành phần chính sau: phần ứng dụng (Word Application), phần văn bản (Document) và phần mẫu tạm... (Page formats) Kiểu định dạng ô (Cell formats) Kiểu trình bày cột và dòng (Row and column styles) Nội dung một số trình bày sẵn mà bạn đa vào template (text, dates, numbers, formulas, graphics) Các lệnh bổ sung trên menu, các macro hoặc Toolbar gán với một module trong template Khi bạn mở một template, Excel mở nó nh một bản sao thứ hai, cha có tên và cha đợc lu, bao gồm mọi thứ (data, formatting, formulas,... Cung cấp các công cụ phân tích về tài chính, kỹ thuật Bổ sung các hàm Visual Basic cho Analysis ToolPak Truy xuất dữ liệu từ những bảng và những tập tin cơ sở dữ liệu bên ngoài sử dụng Microsoft Query Bổ sung các hàm cho worksheet và macro để truy xuất dữ liệu từ những nguồn bên ngoài qua Microsoft Open Database Connectivity (ODBC) Tổ chức in ấn các report phù hợp với những sắp xếp định trớc Phục vụ cho... thuộc vị trí của đối tợng Data Map, dữ liệu cho bản đồ xuất xứ từ các bảng tính của MS Excel hoặc các cơ sở dữ liệu của MS Access Bạn có thể tạo các Data Map trong Excel, sau đó thả chúng vào Word hay Powerpoint, tuy nhiên khi ấy sẽ phá vỡ sự liên kết đến dữ liệu Để cập nhật Data Map mới trong Word hay Powerpoint, bạn phải chép đè bản đã đợc cập nhật từ Excel (hay Access) Tuơng tự nh trên, khi liên kết... đợc liên kết động (linked dynamically) với dữ liệu lu trên worksheet Điều này có nghĩa là khi ta thay đổi dữ liệu biểu đồ sẽ thay đổi theo, hoặc khi thay đổi cách thể hiện dữ liệu trên biểu đồ qua Data Marker thì dữ liệu trong các ô đợc liên kết tới cũng sẽ thay đổi Data Marker có thể hiểu là ký hiệu (nh chấm, thanh, vùng, dải, v.và) biểu diễn một điểm dữ liệu hay một giá trị đơn trên đồ thị lấy từ một... chọn vào văn bản KIểU Và ĐịNH DạNG Tự ĐộNG (AUTOFORMAT) Lệnh AutoFormat phân tích phần Text trong văn bản, sau đó gán kiểu cho phần text này "gần" với kiểu đợc sao từ Template nền Nếu AutoFormat không tìm thấy một kiểu "chấp nhận đợc" trong số các kiểu chứa trong văn bản, nó sẽ dùng các kiểu cài sẵn (Built-in) của Word Những kiểu Built-in này cho phép AutoFormat định dạng các thành phần của văn bản nh... đơn vị Có các cách sau để điều chỉnh cấu hình của Excel: Qua giao diện ngời dùng, trong hộp thoại Options từ Menu Tools Những thay đổi này sẽ đợc lu trong các Registry tơng ứng của Windows95 Thay đổi thẳng trong Windows95 registry Thay đổi bằng cách tạo các Add-Ins mới Thực chất Add-in là một workbook ẩn, chỉ đợc phép đọc, trong đó toàn bộ các mã của Visual Basic đã đợc dịch ra Bạn có thể tạo các . "replica" của Access với khả năng đồng bộ hóa dữ liệu
giữa chúng. Access for Windows 95 còn hổ trợ việc đồng bộ hóa dữ liệu khi chạy trên nền Windows
NT 3.51 trúc của Microsoft Access for Windows 95
T rong các bài trớc chúng ta đã xem qua về cấu trúc của Office 7.0, Word 7.0 và Excel 7.0 dành cho
Windows 95. Trong