James Perry, Richard Newmark
Chương 3
Tạo, nhập liệu, và hiển thị bảng
Thiết lập việc kiểm tra hợp lệ dữ liệu ở cấp bảng
Để hiểu cách đặt thuộc tính, bạn sẽ đặt thuộc tính cho EmpCommRate và EmpGender trong bảng
tblMyEmployees. Bạn sẽ thay đổi một số thuộc tính của trường phần trăm hoa hồng. Phần trăm hoa hồng là số nhỏ, vì vậy bạn sẽ qui định cỡ trường của nó là
Single cho phù hợp với số nhỏ có vài vị trí thập phân. Chẳng hạn, giá trị 0.0895 sẽ hiển thị 8.95% ở góc nhìn Datasheet. Bạn sẽ đổi thuộc tính ghi chú Caption để cột phần trăm hoa hồng hiển thị đầu đề “Rate” thay cho đầu đề mặc định kỳ dị “EmpCommRate,” là tên trường của cột. Nhân viên mới và nhân viên quản lý không nhận tiền hoa hồng, vì vậy bạn muốn đặt giá trị mặc định cho trường hoa hồng là 0. Sau cùng, bạn sẽ đặt miền giá trị hợp lệ cho phần trăm hoa hồng để tránh nhập sai phần trăm hoa hồng bất hợp lý chẳng hạn 45%. Qui tắc hợp lệ Validation Rule sẽ hạn chế dữ liệu phần trăm hoa hồng nhập vào, và thông báo hợp lệ Validation Text sẽ hiển thị khi giá trị phần trăm hoa hồng bất hợp lệ.
Trường giới tính EmpGender cần có qui tắc hợp lệ chỉ cho phép nhập
m hay
f ở dạng chữ thường hay chữ hoa. Việc thay thuộc tính ghi chú Caption thành “Gender” sẽ làm rõ nghĩa cho cột.
BÀI TẬP 3.10: ĐẶT THUỘC TÍNH CHO TRƯỜNG PHẦN TRĂM HOA HỒNG
1. Hãy đảm bảo cơ sở dữ liệu
Chương 3 đang mở và mọi cửa sổ (tabs) đều đóng. Kích phải
tblMyEmployees rồi kích
Design View trong pop-up menu để mở bảng ở góc nhìn Design.
2. Kích bất kỳ nơi nào trong dòng EmpCommRate rồi nhấn
F6 (phím tắt) để đến thuộc tính kích cỡ trường Field Size trong khung Field Properties.
3. Kích mũi tên danh-sách-sổ-xuống của
Field Size rồi kích
Single.
4. Kích thuộc tính định dạng
Format, kích mũi tên danh-sách-sổ-xuống, rồi kích
Percent (phần trăm).
5. Kích thuộc tính
Decimal Places, kéo chuột để đánh dấu giá trị hiện thời, rồi gõ
2 để chỉ định hai vị trí thập phân.
6. Kích thuộc tính chú thích
Caption rồi gõ
Rate. Để ý chú thích (bằng tiếng Anh) ở bên phải khung Field Properties. Đó là thông tin hữu ích về thuộc tính đang chọn.
7. Kích thuộc tính giá trị mặc định
Default Value rồi gõ
0.
8. Kích thuộc tính qui tắc hợp lệ
Validation Rule rồi gõ
between 0 and 0.15 (giữa 0 và 0,15) để đặc tả miền giá trị hợp lệ (kể cả giá trị biên) cho phần trăm hoa hồng. Hãy chắc giá trị thứ hai là 0.15, không phải 15. Giá trị 15 nghĩa là 1500%! (Để ý là biểu thức
>=0 and <=0.15 tương đương với biểu thức trên.)
9. Nhấn
Tab để đến thuộc tính Validation Text. Để ý rằng từ “between” trong thuộc tính Validation Rule đã đổi thành “Between” thể hiện rằng Access đã nhận ra đây là từ khóa.
10. Trong ô thuộc tính Validation Text, gõ
Commission rates range from 0% to 15% (phần trăm hoa hồng có giá trị từ 0% đến 15%). Hình 3.14 trình bày
tblMyEmployees ở góc nhìn Design và các thuộc tính mới bạn đã đặt cho đến nay.
Hình 3.14 Các thuộc tính EmpCommRate đã thay đổi.
11. Kích
Save trên thanh công cụ truy xuất nhanh Quick Access Toolbar để bảo toàn các thay đổi vừa thực hiện.
Nếu bạn kích Save để bảo toàn các thay đổi vừa thực hiện trên một bảng đã có dữ liệu, một hộp thoại sẽ hiện lên khuyến cáo là các qui tắc toàn vẹn dữ liệu đã thay đổi và dữ liệu hiện thời có thể bất hợp lệ. Khuyến cáo này phát sinh vì bạn vừa thiết lập tiêu chuẩn cho trường phần trăm hoa hồng – tiêu chuẩn này chưa tồn tại trong quá trình nhập liệu trước đây.
BÀI TẬP 3.11 ĐẶT THUỘC TÍNH CHO TRƯỜNG EMPGENDER
1. Với
tblMyEmployees vẫn hiển thị ở góc nhìn Design, kích nơi bất kỳ trong dòng EmpGender rồi nhấn
F6 để chuyển đến thuộc tính Field Size trong khung Field Properties.
2. Gõ số
1 để giới hạn chiều dài dữ liệu cho giới tính là một ký tự.
3. Nhấn
Tab hai lần để chuyển đến thuộc tính mặt nạ nhập liệu Input Mask rồi gõ
>L, tức chuyển bất kỳ dữ liệu nhập ở góc nhìn Datasheet thành chữ hoa. Hãy chức là bạn đã gõ chữ
L hoa. Bằng không bạn sẽ không được kết quả mong muốn.
4. Kích thuộc tính
Caption rồi gõ
Gender.
5. Kích Validation Rule rồi gõ
“F” or “M” để qui định các giá trị được phép. Để ý là ta không phải lo trường hợp chữ thường (“f” hay “m”) vì thuộc tính mặt nạ nhập liệu Input Mask đã buộc dữ liệu nhập phải là chữ hoa. Qui tắc này hạn chế các chữ hoa phải là một trong hai giá trị qui định.
6. Kích
Validation Text rồi gõ
Only F or M allowed in this field (chỉ được phép là F hay M trong trường này).
7. Kích
Save trên thanh công cụ truy xuất nhanh Quick Access Toolbar để lưu các thay đổi. Như đã đề cập trước đây, nếu bảng của bạn đã có dữ liệu, một khuyến cáo sẽ xuất hiện cho biết dữ liệu hiện thời có thể bất hợp lệ. Trong trường hợp đó, bạn kích Yes để áp đặt sự thay đổi.
Bạn có thể đặc tả các giá trị mặt nạ nhập liệu Input Mask lý thú hơn cho các trường số và trường thời điểm. Một số ký hiệu thuộc tính Input Mask cần được diễn giải. Chẳng hạn, bạn có thể đặc tả Input Mask cho trường số điện thoại như sau
000\-0000;1;_
Để buộc bất kỳ số điện thoại phải tuân theo qui ước “555-1212” – tức ba chữ số sau đó là dấu gạch ngang sau đó là bốn chữ số. Các số 0 trong Input Mask nghĩa là cần một chữ số ở vị trí đó. Dấu chéo ngược \ ký hiệu rằng ký tự sau đó, trong trường hợp này là dấu gạch ngang, là ký tự cụ thể chứ không phải là toán tử chẳng hạn dấu trừ. Dấu chấm phẩy đầu tiên kết thúc phần đầu của Input Mask. Số 1 giữa hai dấu chấm phẩy ký hiệu rằng dấu gạch ngang trong số điện thoại bất kỳ mà người dùng có thể nhập vào sẽ không được lưu vào trường – chỉ lưu 7 chữ số điện thoại. Dấu chấm phẩy thứ hai kết thúc phần thứ hai của Input Mask. Cuối cùng, phần thứ ba của Input Mask, ký tự gạch dưới ký hiệu đó là ký tự Access sẽ hiển thị tại vị trí người dùng cần nhập một ký tự. Nói cách khác, dấu gạch dưới sẽ xuất hiện trong trường điện thoại Phone ở nơi người dùng chưa nhập chữ số. Phần Thử nghiệm sau sẽ trình bày hoạt động của các thuộc tính đã chọn và trường mặt nạ.
THỬ NGHIỆM
Hãy mở
tblMyEmployees ở góc nhìn Datasheet. Gõ
4567 vào cột EmpID rồi nhấn
Tab để sang cột kế. Gõ tên của bạn vào EmpFName, nhấn
Tab, gõ họ của bạn vào EmpLName. Nhấn
Tab rồi chọn
Milford từ danh-sách-sổ-xuống. Nhấn
Tab rồi chọn
Sales Manager (quản lý viên bán hàng) từ danh-sách-sổ-xuống. Nhấn
Tab để đến cột phần trăm giảm giá Rate, gõ
55 rồi nhấn
Tab. Điều gì xảy ra? Nhấn
OK để chấp nhận thông báo rồi gõ phần trăm giảm giá hợp lệ là
12. Nhấn
Tab hai lần để đến trường giới tính Gender rồi gõ
A. Nhấn
Tab. Điều gì xảy ra? Một lần nữa, qui tắc kiểm tra hợp lệ dữ liệu của bạn đã bắt được lỗi nhập liệu này. Kích
OK để thừa nhận lỗi rồi gõ giới tính của bạn bằng chữ thường. Nhấn
Tab. Để ý rằng Access tự động chuyển chữ thường sang chữ hoa. Hãy chuyển sang dòng mới để ghi dòng nhân viên mới vào bảng bằng cách kích cột
EmpID ở dòng mới. Bạn có thể đã để ý rằng biểu tượng bút chì ở nút chọn bản ghi ở dòng đầu tiên đã biến mất. Điều này cho biết dữ liệu vừa nhập đã được lưu vào cơ sở dữ liệu.
Xóa bản ghi mới: Kích trường bất kỳ bạn vừa thêm, kích mũi tên sổ xuống của lệnh
Delete (Delete ở trong nhóm Records thuộc HOME tab), rồi kích
Delete Records. Kích
Yes khi hộp thoại xuất hiện để xác nhận thao tác xóa bản ghi. Kích phải
tblMyEmployees tab rồi kích
Close trong pop-up menu để đóng cửa sổ góc nhìn Datasheet.
Hãy cẩn thận khi bạn đặt cả hai thuộc tính Default và Validation Rule cho trường. Chúng có thể xung đột với nhau nếu bạn không cẩn thận. Chẳng hạn, bạn đặt giá trị mặc định cho trường là 2 và sau đó gõ qui tắc hợp lệ là
Between 3 And 25 (giữa 3 và 25). Rõ ràng giá trị mặc định không thuộc miền giá trị cho phép, được qui định bởi thuộc tính Validation Rule. Xung đột vô tình phát sinh khi bạn bỏ qua trường đó, khiến Access phải chèn giá trị mặc định 2 vào trường, làm vi phạm qui tắc hợp lệ.