Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 2 - Nguyễn Nhật Minh

29 9 0
Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 2 - Nguyễn Nhật Minh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Hệ quản trị cơ sở dữ liệu - Chương 2: Mô hình quan hệ trình bày các khái niệm của mô hình quan hệ; khái niệm về các dạng chuẩn; các ràng buộc quan hệ, lược đồ cơ sở dữ liệu quan hệ. Đây là một tài liệu rất hữu ích dành cho các bạn sinh viên ngành Công nghệ thông tin dùng làm tài liệu tham khảo phục vụ học tập và nghiên cứu.

CHƯƠNG II: MƠ HÌNH QUAN HỆ Mơ hình quan hệ Ted Codd đưa vào năm 1970 gây ý tức khắc tính đơn giản sở tốn học Mơ hình quan hệ sử dụng khái niệm quan hệ toán học khối xây dựng sở có sở lý thuyết lý thuyết tập hợp logic vị từ bậc Trong chương nghiên cứu khái niệm mơ hình quan hệ 2.1 CÁC KHÁI NIỆM CỦA MƠ HÌNH QUAN HỆ Mơ hình quan hệ cách tổ chức liệu dạng bảng hay quan hệ gồm ba thành phần sau: • A Cấu trúc liệu: tổ chức dạng bảng hay quan hệ • B Thao tác liệu: Những phép tốn mạnh (ngơn ngữ truy vần - SQL) để thực thao tác liệu • C Tích hợp liệu: qui tắc nghiệp vụ nhằm trì tính tồn vẹn liệu chúng thao tác 2.1.1 Quan hệ, thuộc tính, miền • Quan hệ: bảng liệu hai chiều Mỗi quan hệ tập hợp cột cột đặt tên số tuỳ ý hàng không đặt tên Một quan hệ mô tả tập hợp đối tượng giới thực ta gọi thực thể • Thuộc tính:, đối tượng mơ tả quan hệ có chung đặc trưng Các cột quan hệ nhằm mô tả đặc trưng hay thuộc tính thực thể, cột biểu thị đặc trưng • Nhóm lặp hay số thuộc tính có giá trị khác hàng giá trị thuộc tính khác lại trùng • Bản ghi: Mỗi hàng quan hệ chứa liệu biểu thị thông tin đối tượng cụ thể, hàng quan hệ gọi (tube) hay gọi ghi (record) Ví dụ Quan hệ SINHVIÊN SINHVIÊN Họtên Mã số Ngàysinh Giớitính Lớp Mơn Điểm Lê Văn Vân 4515202 12/09/84 Nữ 49 KTLN Toán Phạm Thế Anh 4610503 15/05/85 Nam 51 QTKD Tốn Hồng Thanh Tùng 4516802 21/03/84 Nam 50 Kế toán Tin Phạm Thế Anh 4610503 15/05/85 Nam 51 QTKD CSDL Đỗ Trần Cung 4521402 20/01/84 Nam 50 Kế toán Triết • Lược đồ quan hệ: Khi thay đổi liệu bảng tính chất quan hệ khơng thay đổi, ta loại bỏ tất hàng liệu khỏi bảng, có khung quan hệ, khung gọi lược đồ quan hệ • Để mơ tả lược đồ quan hệ ta qui ước viết tên quan hệ chữ in hoa sau danh sách thuộc tính dấu ngoặc đơn, thuộc tính viết chữ thường phân tách dấu phẩy • Ví dụ quan hệ SINHVIEN ta có lược đồ quan hệ SINHVIEN(Họtên, Mãsố, Ngàysinh, Giớitính, Lớp, Mơn, Điểm) • Miền giá trị: Mỗi thuộc tính lược đồ quan hệ nhận giá trị liệu tập đó, tập gọi miền giá trị (nói vắn tắt miền trị) thuộc tính • Ví dụ: Trong quan hệ SINHVIEN thuộc tính Họtên tập dẫy chữ có độ dài nhỏ 25; Giớitính tập hai giá trị “nam”, “nữ”; Điểm tập hợp số nguyên từ đến 10 2.1.2 Các đặc trưng quan hệ • • • • • • A Giá trị đưa vào cột đơn nhất: Giá trị liệu đưa vào cột tương ứng với hàng đơn thuộc miền trị thuộc tính B Các giá trị đưa vào cột phải thuộc miền liệu Ví dụ liệu đưa vào cột điểm phải số nguyên từ đến 10, đưa vào chữ ”chín” hay ”bảy” C Mỗi dịng bảng D Thứ tự cột khơng quan trọng: Các cột đổi chỗ cho mà không làm thay đổi ý nghĩa chúng, cột xác định tên thứ tự E Thứ tự hàng khơng quan trọng: Các hàng đưa vào bảng có thứ tự tuỳ ý Ví dụ bảng khơng phải quan hệ SINHVIÊN Họtên Lê Văn Vân Mã số Ngàysinh Giớitính Lớp 4515202 12/09/84 Nữ Mơn Điểm 49 KTLN Tốn Hồng Thanh Tùng 4516802 21/03/84 Nam 50 Kế toán Tin Phạm Thế Anh 4610503 15/05/85 Nam 51 QTKD CSDL, 8, Toán Đỗ Trần Cung 4521402 20/01/84 Nam 50 Kế toán Triết 2.2 KHÁI NIỆM VỀ CÁC DẠNG CHUẨN 2.2.1 Quan hệ có cấu trúc tốt • Một quan hệ có cấu trúc tốt quan hệ có chứa số dư thừa liệu cho phép người dùng thêm, xoá, hay sửa đổi hàng bảng mà không gây lỗi khơng qn Một quan hệ khơng có cấu trúc tốt: SINHVIÊN Họtên Mã số Ngàysinh Giớitính Lớp Môn Điểm Lê Văn Vân 4515202 12/09/84 Nữ 49 KTLN Toán Phạm Thế Anh 4610503 15/05/85 Nam 51 QTKD Tốn Hồng Thanh Tùng 4516802 21/03/84 Nam 50 Kế toán Tin Phạm Thế Anh 4610503 15/05/85 Nam 51 QTKD Đỗ Trần Cung 4521402 20/01/84 Nam 50 Kế toán Triết CSDL 8 • Khố - primary key: Là khoá dự tuyển chọn làm khoá quan hệ Trong số khoá dự tuyển nêu quan hệ SINHVIEN, rõ ràng ta chọn (Mãsv) làm khoá tốt Để chọn khố ta nên theo ngun tắc sau: • Khố nên có số thuộc tính Nếu tốt gồm thuộc tính • Nếu khố có nhiều thuộc tính, nên tạo thuộc tính thay chúng làm kháo cho quan hệ • Nếu khố cấu tạo từ nhiều thuộc tính, nên tránh sử dụng thuộc tính dễ thay đổi theo thời gian tên địa danh chẳng hạn Như khố dùng để tính nhận dạng ghi quan hệ Khoá ngoại - foreign key: Một khoá dùng quan hệ (bảng) để làm đại diện cho giá trị khoá bảng có liên hệ Trong khố chứa giá trị khố ngoại chứa giá trị giống Ví dụ, mã sinh viên (MãSV) khố bảng SINHVIEN (mỗi sinh viên có mã nhất), cịn MãSV bảng SINHVIEN_MON xem khố ngoại, sinh viên tham gia nhiều mơn, giá trị MASV bảng SINHVIEN_MON trùng lặp Các dạng chuẩn Người ta xác định có ba dạng chuẩn gồm: • Dạng chuẩn thứ (1NF): Khơng có nhóm lặp bảng • Dạng chuẩn thứ hai (2NF): + Là chuẩn + Khơng có trường khơng khố phụ thuộc vào phần khố • Dạng chuẩn thứ ba (3FN): + Là chuẩn + Không có thuộc tính khơng khố phụ thuộc vào thuộc tính khơng khố khác Nói cách khác, thuộc tính ghi chứa thơng tin thực thể xác định khố 2.2.3 Chuẩn hoá lược đồ quan hệ Chuẩn hố q trình chuyển quan hệ có cấu trúc phức hợp thành quan hệ có cấu trúc đơn giản Thc q trình chuẩn hố, ta bắt đầu việc kiểm tra dạng chuẩn từ thấp đến cao thực việc tách quan hệ phức hợp thành quan hệ đơn giản Nếu quan hệ khơng chuẩn • • Có nghĩa QH có chứa thuộc tính lặp Khi ta tách thành hai quan hệ : Quan hệ thứ : Gồm thuộc tính lặp phần khố xác định chúng Quan hệ thứ hai : gồm thuộc tính cịn lại tồn khố khơng chứa thuộc tính lặp Ví dụ, cho lược đồ quan hệ: DONHANG(sốđơn, mãkhách, tênkh, địachỉkh, ngàyđặt, mãhàng*, tênhàng*, đơnvịtính*, mơtả*, sốlượng*) Trong quan hệ ta đánh dấu * thuộc tính lặp Để xác định khoá ta xác định phụ thuộc hàm : • (mãkhách) ( tênkh, địachỉkh) • ( mãhàng) ( tênhàng, đơnvịtính, mơtả) • (sốđơn, mãhàng) ( sốlượng) • (sốđơn) (mãkhách, ngàyđặt, mãhàng) Từ ta suy khố gồm thuộc tính bên trái phụ thuộc hàm : (sốđơn, mãkhách,mãhàng) Quan hệ DONHANG tách thành hai quan hệ sau : • Quan hệ 1: gồm thuộc tính thuộc tính lặp phần khố xác định chúng HÀNGĐẶT(sốđơn, mãhàng, tênhàng, đơnvịtính, mơtả, sốlượng) • Quan hệ 2: Gồm thuộc tính cịn lại phần khoá xác định chúng: DONHANG(sốđơn, mãkhách, tênkh, địachỉkh, ngàyđặt) Nếu quan hệ khơng chuẩn 2, Có nghĩa QH có chứa thuộc tính khơng khố phụ thuộc vào phần khố Khi ta tách thành hai quan hệ : • Quan hệ thứ nhất: Gồm thuộc tính khơng khố phụ thuộc vào phần khố phần khố xác định chúng • Quan hệ thứ hai: Gồm thuộc tính cịn lại tồn khố Ví dụ: Quan hệ DONHANG(sốđơn, mãkhách, tênkh, địachỉkh, ngàyđặt) quan hệ dạng chuẩn chưa chuẩn Các phụ thuộc hàm: • (sốđơn) (mãkhách, ngàyđặt) ; (mãkhách)  (tênkh, địachỉkh) Kéo theo khố quan hệ (sốđơn, mãkhách) • Phụ thuộc hàm (mãkhách)  (tênkh, địachỉkh) cho thấy hai thuộc tính khơng khố phụ thuộc vào phần khố Vậy quan hệ DONHANG(sốđơn, mãkhách, tênkh, địachỉkh, ngàyđặt) tách thành hai quan hệ: (1) KHÁCH(mãkhách, tênkh, địachỉkh) (2) DONHANG(sốđơn, mãkhách, ngàyđặt) Nếu quan hệ không chuẩn 3, Khi quan hệ dạng chuẩn chưa dạng chuẩn 3, có nghĩa quan hệ tồn thuộc tính khơng khố phụ thuộc vào thuộc tính khơng khố khác Để đưa dạng chuẩn ta tách quan hệ sau: • Quan hệ thứ nhất: Gồm thuộc tính khơng khố thuộc tính khơng khố khác (gọi thuộc tính cầu) xác định chúng • Quan hệ thứ hai: Gồm thuộc tính cịn lại thuộc tính gọi thuộc tính cầu nói Ví dụ: cho lược đồ VẬNCHUYỂN(sốvậnđơn, khohàng, nơiđến, khoảngcách) • Các phụ thuộc hàm: (sốvậnđơn)  ( khohàng, nơiđến, khoảngcách) ; ( khohàng, nơiđến) ( khoảngcách) Xác định khố (vậnđơn) • Rõ ràng quan hệ (khoảngcách) thuộc tính khơng khố lại phụ thuộc vào thuộc tính khơng khố khác (khohàng, nơiđến) Do đó, lược đồ tách thành hai lược đồ: (1) HÀNHTRÌNH(khohàng, nơiđến, khoảngcách) (2) VẬNCHUYỂN(sốvậnđơn, khohàng, nơiđến) 2.3 CÁC RÀNG BUỘC QUAN HỆ, LƯỢC ĐỒ CSDL QUAN HỆ Trong phần thảo luận hạn chế liệu lược đồ sở liệu quan hệ Các hạn chế gọi ràng buộc Có loại ràng buộc : ràng buộc miền, ràng buộc khoá, ràng buộc toàn vẹn thực thể ràng buộc toàn vẹn tham chiếu 2.3.1 Các ràng buộc miền • Các ràng buộc miền giá trị thuộc tính A phải giá trị nguyên tử thuộc miền giá trị thuộc kiểu liệu Các kiểu liệu liên kết với miền bao gồm: • kiểu liệu số chuẩn cho số nguyên ( short integer, integer, long integer), • số thực ( float, double precision float ) • Ngồi kiểu liệu ký tự (dãy ký tự với độ dài cố định, dãy ký tự với độ dài thay đổi ), • ngày, thời gian (Date, Time) • tiền tệ (currency) • Các loại miền khác miền kiểu liệu kiểu liệu đếm giá trị liệt kê rõ ràng 2.3.2 Ràng buộc khố Thơng thường, có tồn tập thuộc tính lược đồ quan hệ có tính chất khơng có hai trạng thái quan hệ r R có tổ hợp giá trị cho thuộc tính Giả sử ký hiệu tập SK; với hai khác t1 t2 trạng thái quan hệ r R có ràng buộc t1[SK]  t2[SK] Tập hợp thuộc tính SK gọi siêu khoá (superkey) lược đồ quan hệ R Một siêu khố SK xác định rõ ràng buộc tính , phát biểu khơng có hai khác trạng thái r R có giá trị cho SK Mỗi quan hệ có it siêu khố mặc định, tập hợp tất thuộc tính Một khoá K lược đồ quan hệ R siêu khố R với tính chất bỏ thuộc tính A khỏi K cịn lại tập K khơng phải siêu khố R 2.3.4 Tồn vẹn thực thể, tồn vẹn tham chiếu khố ngồi • Ràng buộc tồn vẹn thực thể phát biểu là: khố phải ln ln có giá trị xác định, nghĩa khơng phép có giá trị null Các ràng buộc khố ràng buộc tồn vẹn thực thể quan hệ riêng rẽ • Ràng buộc toàn vẹn tham chiếu hai quan hệ để trì tương ứng hai quan hệ Lược đồ sơ đồ tham chiếu NHÂNVIÊN( Họđệm,Tên, MãsốNV, Ngàysinh, Địachỉ, Giớitính,Lương, MãsơNGS, MãsốĐV) ĐƠNVỊ ( TênĐV, MãsốĐV, MãsốNQL, Ngàybắtđầu) ĐƠNVỊ_ĐỊAĐIỂM( MãsốĐV, ĐịađiểmĐV) DỰÁN( TênDA, MãsốDA, ĐịađiểmDA, Mã sốĐV) NHÂNVIÊN_DỰÁN( MãsốNV, MãsốDA, Sốgiờ) PHỤTHUỘC( MãsốNV, TênCon, Giớitính, Ngàysinh) ... CSDL, 8, Toán Đỗ Trần Cung 4 521 4 02 20/01/84 Nam 50 Kế toán Triết 2. 2 KHÁI NIỆM VỀ CÁC DẠNG CHUẨN 2. 2.1 Quan hệ có cấu trúc tốt • Một quan hệ có cấu trúc tốt quan hệ có chứa số dư thừa liệu cho... dẫy chữ có độ dài nhỏ 25 ; Giớitính tập hai giá trị “nam”, “nữ”; Điểm tập hợp số nguyên từ đến 10 2. 1 .2 Các đặc trưng quan hệ • • • • • • A Giá trị đưa vào cột đơn nhất: Giá trị liệu đưa vào cột.. .2. 1 CÁC KHÁI NIỆM CỦA MƠ HÌNH QUAN HỆ Mơ hình quan hệ cách tổ chức liệu dạng bảng hay quan hệ gồm ba thành phần sau: • A Cấu trúc liệu: tổ chức dạng bảng hay quan hệ • B Thao tác liệu:

Ngày đăng: 09/05/2021, 22:19

Tài liệu cùng người dùng

Tài liệu liên quan