bài giảng hệ cơ sở dữ liệu - ths. trịnh thị ngọc linh

61 512 1
bài giảng hệ cơ sở dữ liệu  - ths. trịnh thị ngọc linh

Đ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

HỆ CƠ SỞ DỮ LIỆU GV: ThS.Trịnh Thị Ngọc Linh Email: ngoclinhnl@yahoo.com Chương MƠ HÌNH QUAN HỆ 3.1 Mơ hình quan hệ 3.2 Các khái niệm mơ hình quan hệ 3.3 Tính tồn vẹn quan hệ 3.4 Các ngơn ngữ quan hệ 3.5 Khung nhìn 3.1 Mơ hình quan hệ    Mơ hình sở liệu quan hệ (gọi tắt Mơ hình quan hệ) Do E.F Codd đề xuất năm 1971 Mơ hình bao gồm:  Một hệ thống ký hiệu để mơ tả liệu dạng dịng cột quan hệ, bộ, thuộc tính, khóa chính, khóa ngoại,  Một tập hợp phép toán thao tác liệu phép toán tập hợp, phép toán quan hệ  Ràng buộc toàn vẹn quan hệ 3.2 Các khái niệm mơ hình quan hệ 3.2.1 Miền (Domain) 3.2.2 Thuộc tính (Attribute) 3.2.3 Lược đồ quan hệ (Relation scheme) 3.2.4 Quan hệ (Relation) 3.2.5 Bộ giá trị (tuple) 3.2.6 Thể quan hệ (view) 3.2.7 Khóa (key) 3.2.1 Miền (Domain)  Một miền D tập hợp giá trị nguyên tố, hiểu theo nghĩa giá trị miền phân chia phạm vi mơ hình quan hệ  Để đặc tả miền người ta tên miền, kiểu liệu khn dạng liệu  Ví d ụ :  Miền Mã sinh viên tập hợp dãy ký tự có độ dài từ đến 8, bắt đầu chữ  Miền Họ tên tập dãy chữ có độ dài khơng q 35 3.2.2 Thuộc tính (Attribute)  Thuộc tính tính chất riêng biệt đối tượng cần lưu trữ CSDL để phục vụ cho việc khai thác liệu đối tượng  Các thuộc tính phân biệt qua tên gọi phải thuộc vào kiểu liệu định (số, chuỗi, ngày tháng, logic, hình ảnh,…)  Trong đối tượng khơng có hai thuộc tính tên 3.2.2 Thuộc tính (tt)  Ví dụ  Đối tượng Khoa có thuộc tính Mã khoa, Tên khoa  Đối tượng Lớp học có thuộc tính Mã lớp, Tên lớp, Niên khóa, Số học viên…  Đối tượng Mơn học có thuộc tính Mã mơn, Tên mơn, Số tín chỉ…  Đối tượng Sinh viên có thuộc tính Mã sinh viên, Tên sinh viên, Ngày sinh, Giới tính, Quê quán, Địa chỉ…  Đối tượng Giảng viên có thuộc tính Mã giảng viên, Tên giảng viên, Học vị, Chuyên ngành 3.2.2 Thuộc tính (tt)  Một số kiểu liệu thường dùng:  Text (hoặc Character, String, Char) – kiểu văn  Number (hoặc Numeric, float) – kiểu số  Logical (hoặc Boolean) – kiểu luận lý  Date/Time – kiểu thời gian: ngày tháng năm + phút  Memo (hoặc VarChar) – kiểu văn có độ dài thay đổi  Ví d ụ :  Thuộc tính ngày (trong tháng) có kiểu liệu số nguyên, miền giá trị từ đến (tối đa là) 31  Điểm thi có kiểu liệu số nguyên, miền giá trị từ đến 10 3.2.3 Quan hệ (Relation)  Một quan hệ tập thuộc tính tập tích Descartes hay nhiều miền  Quan hệ gọi thuật ngữ khác bảng (table)  Bậc (degree) quan hệ số thuộc tính quan hệ  Bản số (cardinality) quan hệ số (tuple) mà chứa đựng 3.2.3 Quan hệ (tt)  Ví d ụ :  MonHoc (MaMon, TenMon, SoĐVHT) quan hệ  HocVien (MaHocVien, TenHocVien, NgaySinh, QueQuan, MaLop) quan hệ  GiangVien (MaGiangVien, TenGiangVien, CapHocVi, ChuyenNganh) quan hệ ngơi Phép tính quan hệ  Codd 1970  Biến nguyên thuỷ dùng phép tính quan hệ biến (tuple variable), biểu thị quan hệ  Ngôn ngữ SQL Ngôn ngữ truy vấn SQL  SQL thuộc loại ngôn ngữ hệ thứ tư (4GL) nghiên cứu nhiều năm trở thành tiêu chuẩn quốc tế kiểm soát liệu  SQL kế thừa tính phi thủ tục 4GL: Xử lý đồng thời hàng loạt câu lệnh  Người dùng cần nêu yêu cầu liệu mà khơng cần biết máy tính xử lý bên  Người dùng truy xuất nhanh chóng với CSDL lớn, yêu cầu xử lý phức tạp tinh vi mà khơng cần lập trình Ngơn ngữ truy vấn SQL  Các lệnh truy vấn liệu  Gồm ba mệnh đề chính:  Select: Xác định nội dung cột cần đưa kết  From: Xác định bảng cần lấy thông tin  Where: Xác định ghi thỏa mãn yêu cầu chọn lọc để đưa kết  Bổ sung thêm mệnh đề group by, having, order by Ngôn ngữ truy vấn SQL  Các lệnh truy vấn liệu (tt) SELECT [* | DISTINCT] danh_sách_chiếu FROM danh_sách_tên_bảng | tên_các_view [WHERE biểu_thức_điều_kiện] [GROUP BY danh_sách_tên_cột] [HAVING biểu_thức_điều_kiện] [ORDER BY {tên_cột | số_thứ_tự_cột | biểu_thức} [ASC | DESC] ] Ngơn ngữ truy vấn SQL  Ví d ụ  EMP(ENO, ENAME, TITLE)  PAY(TITLE, SAL)  PROJ(PNO, PNAME)  ASG(ENO, PNO, RESP, DUR) Tìm tên tất nhân viên làm việc cho dự án CAD/CAM Select EMP.ENAME From EMP, ASG, PROJ Where (EMP.ENO = ASG.ENO) AND (ASG.PNO = PROJ.PNO) AND (PROJ.PNAME = “CAD/CAM”) Ngôn ngữ truy vấn SQL (tt) Hiệu chỉnh liệu: UPDATE [tên_bảng] SET [tên_cột = biểu_thức,…] [FROM tên_bảng] [WHERE biểu_thức_điều_kiện] Ví d ụ : UPDATE PAY SET SAL = 25000 WHERE TITLE = “Programmer” Ngôn ngữ truy vấn SQL (tt) Thêm liệu: INSERT INTO tên_bảng(danh_sách_tên_cột) VALUES(các_giá_trị) Ví dụ: Thêm nhân viên vào EMP INSERT INTO EMP VALUES (‘E10’, ‘John Smith’, ‘Programmer’) Ngơn ngữ truy vấn SQL (tt) Xóa liệu: DELETE tên_bảng [FROM {tên_bảng | tên_view}] [WHERE biểu_thức_điều_kiện] Ví dụ: Xoá dự án ‘P1’ DELETE FROM PROJ WHERE PNO = ‘P1’ Phép tính quan hệ miền  Thành cơng ngơn ngữ phép tính quan hệ miền chủ yếu QBE (Query by example) (Zloof, 1977) đem lại  QBE thiết kế dành cho kiểu làm việc tương tác từ thiết bị đầu cuối trực quan thân thiện  Khái niệm example: NSD đưa câu vấn tin cách cung cấp example có câu trả lời  Hành động gõ tên quan hệ kích hoạt việc hiển thị lược đồ chúng lên hình Sau cách cung cấp từ khóa cột (miền), người dùng đặc tả câu vấn tin 3.5 Khung nhìn (View)  Trong kiến trúc mức (theo ANSI-SPARC), mơ tả khung nhìn (hay mức ngồi) cấu trúc CSDL xuất cho người dùng cụ thể Trong mơ hình quan hệ, thuật ngữ khung nhìn có nghĩa khác chút 3.5.1 Khái niệm quan hệ sở khung nhìn  Một khung nhìn kết thực hay nhiều thao tác (phép toán) quan hệ sở nhằm đưa quan hệ m ới  Một khung nhìn quan hệ ảo, nghĩa không thực tồn mức vật lý CSDL (như quan hệ sở) mà câu trả lời cho yêu cầu người dùng, thời điểm yêu cầu 3.5.1 Khái niệm quan hệ sở khung nhìn  Khung nhìn mang tính động, theo nghĩa thay đổi quan hệ sở tác động đến thể khung nhìn  Một khung nhìn tạo dựng từ việc thực thao tác phép toán đại số quan hệ (chọn, chiếu, kết nối ) hay phép tính quan hệ quan hệ sở  Như mức ngồi CSDL bao gồm quan hệ sở khung nhìn suy dẫn, kết xuất từ quan hệ sở 3.5.2 Mục đích khung nhìn  Cơ chế sử dụng khung nhìn mang lại số lợi ích sau đây:  Cung cấp chế an ninh hữu hiệu linh hoạt che dấu số phần CSDL trước số người dùng  Cho phép người dùng truy cập liệu theo cách họ muốn, cho thời điểm, liệu thấy nhiều người dùng khác khuôn dạng khác  Cho phép đơn giản hoá phép toán quan hệ sở 3.5.3 Vấn đề cập nhật qua khung nhìn  Việc cập nhật cho quan hệ sở tác động đến tất khung nhìn có tham chiếu đến quan hệ Tương tự, khung nhìn cập nhật quan hệ sở liên quan phải thay đổi  Như có khung nhìn khơng thể cập nhật được, có khung nhìn cập nhật có khung nhìn cập nhật phận 3.5.3 Vấn đề cập nhật qua khung nhìn  Các nguyên tắc hầu hết hệ thống dùng để kiểm soát định cho phép cập nhật CSDL xảy qua khung nhìn:  Được phép cập nhật thơng qua khung nhìn, khung nhìn định nghĩa câu truy vấn đơn giản liên quan đến quan hệ sở chứa khóa khóa dự tuyển quan hệ sở  Khơng cập nhật thơng qua khung nhìn, khung nhìn liên quan đến nhiều quan hệ sở  Không cập nhật thơng quan khung nhìn, khung nhìn liên quan đến (được xác định từ) hàm kết tập hàm gộp nhóm ... MƠ HÌNH QUAN HỆ 3.1 Mơ hình quan hệ 3.2 Các khái niệm mơ hình quan hệ 3.3 Tính tồn vẹn quan hệ 3.4 Các ngơn ngữ quan hệ 3.5 Khung nhìn 3.1 Mơ hình quan hệ    Mơ hình sở liệu quan hệ (gọi tắt... khóa quan hệ khác phải rỗng MaLop TenLop CNTT-01 Công nghệ thông tin TMĐT-02 Thương mại điện tử CNTTUD-03 Công nghệ thông tin ứng dụng MaSinhVien TenSinhVien MaLop 001 Trần Thị Lan Anh CNTT-01 002... quan hệ (view)  Thể (hoặc gọi tình trạng) quan hệ R, ký hiệu TR, tập hợp giá trị quan hệ R vào thời điểm  Ví d ụ : MaMon TenMon SoDVHT TCKT Tài - kế tốn KTCT Kinh tế trị TOANC Tốn Cơ sở LTCBC

Ngày đăng: 02/07/2014, 17:44

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan