- Bảng là cấu trúc cơ bản nhất của CSDL quan hệ. Mỗi bảng
trong một CSDL phải chứa những thông tin thích hợp cho
một đối tượng. Ví dụ: một trường học tiêu biểu gồm có các
học sinh, giáo viên và các lớp. Một ứng dụng CSDL về trường
học phải có một bảng chứa thông tin về học sinh, một bảng
về giáo viên và một bảng về lớp.
- Mỗi dòng trong bảng (hay còn gọi là bản ghi- record) tượng
trưng cho đối tượng được lưu trữ trong bảng. Ví dụ mỗi dòng
trong bảng HOCSINH biểu thị cho một học sinh.
- Mỗi cột trong bảng (hay còn gọi là trường-field) chứa một
mục dữ liệu cần quản lí về đối tượng. Ví dụ mỗi học sinh có
các mục dữ liệu càn lưu trữ là: Số báo danh, Họ tên,
36 trang |
Chia sẻ: lylyngoc | Lượt xem: 1825 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Chương 2: Table và Relationship, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 2: TABLE VÀ RELATIONSHIP
I. Một số thuật ngữ
1. Bảng (Table):
- Bảng là cấu trúc cơ bản nhất của CSDL quan hệ. Mỗi bảng
trong một CSDL phải chứa những thông tin thích hợp cho
một đối tượng. Ví dụ: một trường học tiêu biểu gồm có các
học sinh, giáo viên và các lớp. Một ứng dụng CSDL về trường
học phải có một bảng chứa thông tin về học sinh, một bảng
về giáo viên và một bảng về lớp.
- Mỗi dòng trong bảng (hay còn gọi là bản ghi- record) tượng
trưng cho đối tượng được lưu trữ trong bảng. Ví dụ mỗi dòng
trong bảng HOCSINH biểu thị cho một học sinh.
- Mỗi cột trong bảng (hay còn gọi là trường-field) chứa một
mục dữ liệu cần quản lí về đối tượng. Ví dụ mỗi học sinh có
các mục dữ liệu càn lưu trữ là: Số báo danh, Họ tên,…
Một số thuật ngữ (tiếp)
2. Tên trường (Field name): được dùng để mô tả mục
dữ liệu cần lưu trữ. Mỗi bảng không thể có hai tên
cột trùng nhau
3. Kiểu dữ liệu (Data type): kiểu được dùng để gán
cho dữ liệu chứa trong cột
4. Thuộc tính trường (Field Property): là tập hợp các
đặc điểm được kết hợp vào mỗi trường. Ví dụ: SBD là
xâu 3 kí tự, hocbong co giá trị > 200.000,…
5. Thuộc tính bảng (Table Property): là tập hợp các
đặc điểm liên quan đến nhiều trường được kết hợp
vào bảng. Ví dụ: NGAYSINH+14<=NGAYVD
Một số thuật ngữ (tiếp)
6. Khoá chính (Primary key): Một hay nhiều trường
dùng để nhận dạng duy nhất từng dòng trong bảng
dữ liệu gọi là khoá chính. Mỗi bảng có một khoá
chính. Dữ liệu trong khoá chính phải là duy nhất cho
mỗi bản ghi. Khoá chính còn được dùng để tạo các
liên kết giữa các bảng trong một CSDL.
7. Khóa kết nối: Trong 1 CSDL thường có nhiều bảng,
các bảng này có mối liên kết với nhau. Để xác định
mối liên kết này, ta dùng khóa kết nối. Thông thường
khóa kết nối của 2 bảng là cột có cùng tên nằm ở 2
bảng đó.
II. Qui ước tên trường
Tên trường dùng để mô tả dữ liệu chứa trong trường,
tên trường dài tối đa 64 ký tự và có thể chứa các kí
tự chữ cái, chữ số, khoảng trắng và các kí tự đặc biệt
khác.
Tên trường không được phép chứa dấu chấm (.),
chấm than (!), dấu huyền (`), dấu móc vuông ([])
Tên trường không được bắt đầu bằng khoảng trắng
Tên trường không phân biệt chữ hoa, chữ thường.
Ví dụ: Số báo danh, Họ tên, Toan, Ly,…
III. Các loại dữ liệu
1). Text: các từ hoặc số không được sử dụng trong các
phép tính. Chiều dài tối đa cho kiểu text là 255 kí tự
2). Memo: một trường mở sử dụng cho các lời ghi chú
3). Number: Các số âm hoặc dương
4). Date/Time: Ngày tháng, thời gian
5). Currency: tiền tệ
6). AutoNumber: một trường số được tự động nhập
vào
7). Yes/No: logic
8). OLE Object: một đối tượng như ảnh,...
9). Hyperlink: các địa chỉ Web
IV. Tạo bảng
1. Bước 1: Mở cửa sổ thiết kế bảng (Table Design)
Cách 1: Từ cửa sổ Database, trong mục Object chọn Tables/
Create table in Design view/Design
Tạo bảng (tiếp)
Cách 2: Từ cửa sổ Database, trong mục Object, chọn Tables/
kích biểu tượng New, cửa sổ New Table xuất hiện
Tạo bảng (tiếp)
Chọn Design view/OK
Kết thúc bước 1, ta có cửa số thiết kế bảng(Table Design)
Tạo bảng (tiếp)
2. Bước 2: Thiết kế các trường (cột ) của bảng
Trong cửa sổ như trong hình trên, chúng ta lần lượt thực hiện các
công việc sau:
Nhập tên trường trong mục Field name:
Đặt trỏ chuột vào dòng bất kì của cột Field name
Gõ tên trường
Chọn kiểu dữ liệu của trường trong mục Data Type
Kích vào dấu mũi tên xuống, xuất hiện danh sách kiểu dữ
liệu
Kích chọn kiểu cần dùng
Ghi mô tả của trường trong mục Description (không bắt
buộc)
Tạo bảng (tiếp)
Nhập các thuộc tính của trường trong phần General
và phần Lookup (trình bày ở phần sau)
Nhập thuộc tính của bảng trong phần Table
Properties (trình bày trong phần sau)
Xác định khoá chính:
Đánh dấu các trường trong khoá chính
Kích hoạt biểu tượng chìa khóa hoặc chọn menu
Edit/Primary key, khi đó xuất hiện biểu tượng chìa khoá
ở phía trước của trường được chọn làm khoá chính.
Tạo bảng (tiếp)
3. Bước 3: Ghi lại cấu trúc bảng vừa tạo
Chọn biểu tượng đĩa mềm trên thanh công cụ. Hộp thoại
Save As xuất hiện
Nhập tên bảng trong phần Table Name/OK
V. Thuộc tính trường (Field Properties)
1. Field size: số kí tự tối đa để lưu trữ dữ liệu trong
trường.
2. Format: khuôn dạng của dữ liệu khi hiển thị
3. Decimal Places: dùng cho các trường Number và
Currency để xác định số chữ số được hiển thị và số
chữ số sau dấu thập phân
4. Input mask: Khuôn dạng của dữ liệu nhập. Đó là xâu
kí tự chứa những kí tự sau:
0: Các chữ số. Bắt buộc nhập
9: các chữ số hoặc dấu cách. Không bắt buộc nhập
#: các chữ số, dấu +, - hoặc dấu cách. Không bắt buộc nhập
L: Chữ cái. Bắt buộc nhập
Thuộc tính trường (tiếp)
?: chữ cái. Không bắt buộc nhập
A: Chữ cái hoặc chữ số. Bắt buộc nhập
a: chữ cái hoặc chữ số. Không bắt buộc nhập
&: Ký tự bất kì hoặc khoảng trống. Bắt buộc nhập
.,:-/: các dấu phân cách dùng cho kiểu số và ngày
giờ.
Nếu có kí tự chữ cái cố định thì chữ cái đó được
đặt trong cặp dấu “”
5. Caption:Chú thích
6. Default Value: xác định 1 giá trị cho các mục nhập
mới. Ta sẽ nhập giá trị thường được nhập nhất cho
các trường
Thuộc tính trường (tiếp)
7. Validation Rule : qui định ràng buộc về dữ liệu nhập
vào. Điều kiện ràng buộc có thể dùng:
Các hằng: phải dùng các dấu phân cách: cặp””
cho kiểu xâu, cặp # # cho ngày giờ
Các phép so sánh: =,>,=,
Các phép toán logic: NOT, AND, OR,...
Các toán tử đặc biệt: Between, In, Like,...
8. Validation Text: Thông báo khi dữ liệu nhập vào
không thỏa mãn ràng buộc
Thuộc tính trường (tiếp)
9. Lookup- tham chiếu: Khi muốn ràng buộc để dữ liệu của
trường này chỉ nhận các giá trị của một trường nào đó
trong 1 bảng khác, ta khai báo trong Lookup.
Trong trang Lookup cần khai báo các thông số sau:
Display Control: Chọn Listbox hoặc Combobox
Row Source Type: Kiểu nguồn dữ liệu, dạng bảng hoặc
danh sách giá trị
Row Source: Nguồn dữ liệu, tên bảng truy vấn hay danh
sách giá trị
Bound Column: Số thứ tự của cột được tham chiếu đến(cột
cho giá trị trong bảng gốc)
Column Count: Tổng số cột hiển thị trong hộp
Column width: Độ rộng cột
VI. Thuộc tính bảng (Table Properties)
Khi các ràng buộc dữ liệu liên quan đến nhiều
trường trong bảng, ta phải xác định tại Table
Properties.
Từ cửa sổ Table Design, kích phải chuột, chọn
Properties
Xuất hiện cửa sổ Table Properties cho phép đặt
ràng buộc (tương tự như Fields Properties)
Tại Validation Rule, ta xây dựng biểu thức thể
hiện ràng buộc của các trường trong bảng.
VII. Các thao tác trên bảng
Chỉnh sửa bảng:
Mở bảng cần chỉnh sửa trong Design View
Chọn bảng và kích nút Design
Chèn trường:
Chọn hàng bên dưới vị trí ta muốn chèn
Kích Insert Rows
Xóa trường
Chọn trường cần xóa
Kích Delete Rows (không xóa trường khóa)
Các thao tác trên bảng(tiếp)
Đổi tên trường:
Chọn tên trường cần đổi
Nhập tên mới cho trường
Thay đổi kiểu dữ liệu:
Kích vào cột DataType của trường cần đổi
Kích mũi tên xổ xuống
Chọn kiểu
Lưu bảng
Các thao tác trên bảng(tiếp)
Di chuyển trường:
Kích chọn trường cần di chuyển
Rê kéo đến vị trí mới rồi nhả chuột
Chỉnh kích cỡ hàng
Vào menu Format/Row Height, xuất hiện hộp
thoại Row Height
Nhập độ cao mới cho hàng vào hộp Row height
Các hàng đồng loạt được thay đổi độ cao
Các thao tác trên bảng (tiếp)
Dấu cột:
Ta có thể tạm dấu những cột không muốn xem bằng
cách
Kích chọn cột muốn dấu
Vào menu Format/Hide Columns
Hiện cột:
Vào menu Format/Unhide Columns
Kích bỏ chọn vào những trường không muốn ẩn
Close
Các thao tác trên bảng(tiếp)
Xóa bản ghi:
Kích chọn bản ghi cần xóa
Kích nút Delete Record hoặc nhấn phím Delete
Kích chọn Yes
Thay đổi độ rộng cột
Kích chọn cột cần thay đổi
Vào menu Format/Column Width, xuất hiện hộp thoại
Column Width
Nhập độ rộng mới cho cột
VIII. Nhập, sửa dữ liệu
Nhập dữ liệu sử dụng Edit Mode:
Mở bảng trong Datasheet View
Nhập dữ liệu
Sửa đổi dữ liệu:
Mở bảng trong Datasheet View
Làm các thao tác sửa đổi
Nhập, sửa dữ liệu (tiếp)
Chỉnh sửa toàn bộ nội dung của một trường:
Đặt trỏ chuột tại cạnh trái trường, con trỏ biến
thành dấu cộng
Kích lên trường, toàn bộ trường được chọn
Nhập thông tin mới
Chỉnh sửa một phần nội dung trường:
Kích trên trường ta muốn chỉnh sửa, dấu nhắc sẽ
xuất hiện trong trường
Thay thế phần dữ liệu cần sửa bằng thông tin mới
IX. Tìm kiếm và thay thế
Tìm kiếm
Kích trên trường cần tìm kiếm
Kích nút Edit/ Find. hộp thoại Find and
Replace xuất hiện
Nhập dữ liệu cần tìm vào ô Find What
Kích nút Find next để tìm tiếp. Nếu không còn
bản ghi nào thỏa mãn nữa thì Access sẽ Đưa ra
thông báo
Tìm kiếm và thay thế (tiếp)
Thay thế dữ liệu:
Kích vào trường ta muốn thay thế dữ liệu
Kích menu Edit/Replace, hộp thoại Find and Replace xuất hiện
Nhập dữ liệu sẽ được thay thế trong hộp Find What
Nhập dữ liệu thay thế trong hộp Replace with
Chọn kiểu duyệt trên toàn bảng hay chỉ trong cột ban đầu trong
hộp Look in
Chọn kiểu duyệt lên xuống hoặc toàn bộ trong khung Search
Kích vào hộp Match Case để chỉ định chỉ những dữ liệu nào
chính xác với điều kiện duyệt
Kích vào Search Fields As Formatted để chỉ định chỉ những phần
nào chính xác với kiểu định dạng của điều kiện duyệt
Kích nút Replace All để thay thế tất cả các dữ liệu tìm được
X. Sắp xếp dữ liệu
Sắp xếp dữ liệu
Một cách mặc định, các bản ghi được sắp xếp theo
thứ tự khi nhập vào. ta có thể sắp xếp lại :
Kích chọn trường cần sắp xếp
Kích nút Record/ Sort Ascending để sắp tăng dần hoặc
Sort Descending để sắp xếp giàm dần
Hủy bỏ việc sắp xếp:
Vào menu Record/Remove Filter/Sort. Thứ tự sắp xếp
mặc định cũ sẽ được lưu lại
XI. Lọc dữ liệu
Lọc bằng sự lựa chọn-Filter by Selection:
Kích lên ô có giá trị trường bằng giá trị cần lọc
Kích lên nút Record/Filter by Selection. Sau
khi lọc, chỉ những bản ghi có giá trị của trường đã
chọn bằng giá trị lọc mới được hiển thị.
Để xóa lọc, kích nút Record/Remove Filter. Nút
này sẽ trở thành Apply Filter
Ví dụ: để đưa ra những chuyến hàng có số
lượng=10 thì trong vào bảng CHUYENHANG, kích
chọn ô thuộc trường SOLUONG có giá trị 10. Sau
đó kích Record/Filter by Selection.
Lọc dữ liệu(tiếp)
Lọc bằng Form-Filter by Form: Lọc dữ liệu
bằng Form cho phép lọc dựa trên nhiều hơn 1
điều kiện:
Kích nút Record/Filter by Form.
Kích lên trường ta muốn lọc
Chọn điều kiện lọc
Kích chọn AND hoặc OR nếu cần sử dụng
Kích nút Record/Apply Filter. Kết quả lọc sẽ
xuất hiện trong bảng
Đóng và lưu bảng
XII. Tạo quan hệ giữa các bảng
Đưa bảng vào cửa sổ Relationship:
Trên thanh công cụ của cửa sổ Access, kích
Tools/Relationship, xuất hiện hộp thoại Show Table
Kích chọn tên các bảng cần thiết lập quan hệ, kích Add
Kích Close để đóng hộp thoại
Tạo quan hệ:
Kích chọn trường muốn tạo kết nối trong bảng 1(Bảng ở
đầu 1) rồi rê thả sang trường tương ứng trong bảng 2
(bảng ở đầu nhiều). Hộp thoại Edit Relationship xuất hiện
Kích Creat
Xuất hiện đường liên kết nối 2 bảng
Tạo quan hệ giữa các bảng(tiếp)
Loại bỏ quan hệ:
Kích chọn đường liên kết
Nhấn phím Delete, xuất hiện hộp thoại Delete
Kích chọn Yes
Bài tập
Bảng PHONG - phòng ban trong cơ quan
STT Tên trường Kiểu Độ rộng Ý nghĩa Kiểm soát
1 MAPHONG text 3 Mã phòng ban 3 chữ cái
2 TENPHONG text 40 tên phòng ban
3 DIACHI text 50 dịa chỉ phòng ban
Bảng DMNN-danh mục ngoại ngữ
STT Tên
trường
Kiểu Độ rộng Ý nghĩa Kiểm soát
1 MANN text 2 Mã ngoại
ngữ
2 chữ số
2 TênNN text 20 Tên ngoại
ngữ
Bảng NHANVIEN-Nhân viên
1 MANV text 5 2 kí tự đầu là chữ, 3
kí tự sau là số
2 HOTEN text 40
3 NAM Yes/No Nam: True, Nữ:False
4 NGAYSINH Date/Time Từ 18 đến 60 tuổi
5 LUONG Number Long
Integer
từ 200.000 đến
3.000.000
6 MAPHONG text 3 Phải tồn tại trong
bảng PHONG
7 NGAYBC Date/Time > ngày sinh 18 năm
trở lên
Bảng TDNN-trình độ ngoại ngữ
1 MANV text 5 mã nhân viên Phải tồn tại trong bảng
NHANVIEN
2 MANN text 2 Mã ngoại ngữ Phải tồn tại trong bảng
DMNN
3 TDO text 1 Trình độ ngoại
ngữ
A,B,C,D,E,F