Slide: Bài giảng: Các ngôn ngữ dữ liệu đối với mô hình quan hệ

45 470 0
Slide: Bài giảng: Các ngôn ngữ dữ liệu đối với mô hình quan hệ

Đ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

Các cách tiếp cận đối với thiết kế ngôn ngữ của CSDL quan hệ: Giới thiệu một số ngôn ngữ và phân loại; So sánh và đánh giá. Một số ngôn ngữ dữ liệu mức cao: QBE ( Query By Example); SQL ( Structured Query Language). Phân loại các ngôn ngữ truy vấn: Ngôn ngữ đại số; Ngôn ngữ tính toán vị từ;

Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 1 Các ngôn ngữ dữ liệu đố iv ớ im ô hình qua n h ệ đố ớ ô qua ệ Vũ Tuyết Trinh trinhvt@it-hut.edu.vn Bộ môn Các hệ thống thông tin, Khoa Công nghệ thông tin Đại học Bách Khoa Hà Nội Ứng dụng Hệ CSDL Hệ QTCSDL - Định nghĩaDL - Thao tác DL 2 CSDL CSDL Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 2 Nội dung { Các cách tiếp cận đối với thiếtkế ngôn ngữ của CSDL quan hệ z Giới thiệu một số ngôn ngữ và phân loại ¾ So sánh và đánh giá { Một số ngôn ngữ dữ liệu mức cao z QBE (Query By Example) z S Q L ( S tructured Q uer y LLan g ua g e ) 3 Q( Q y gg ) { Kếtluận Đặtvấn đề { Mục đích của ngôn ngữ dữ liệu { Tại sao có nhiều ngôn ngôn ngữ dữ liệu? { Ngôn ngữ cấpthấp vs. Ngôn ngữ cấp cao? 4 Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 3 Ví dụ { Tìm tên của các sinh ố Student viên nào s ố ng ở Bundoora z Tìm các bộ của bảng Student có Suburb = Bundoora z Đưa ra các giá trị của thuộc tính Name của Id Name Suburb 1108 Robert Kew 3936 Glen Bundoora 8507 Norman Bundoora 8452 Mary Balwyn Student 5 thuộc tính Name của các bộ này Ví dụ (2) { Tìm các sinh viên Id Name Suburb 1108 Robert Kew 3936 Gl d Student đăng ký khoá học có mã số 113 z Tìm các giá trị SID trong bảng Enrol có Course tương ứng là 113 z Đưacácbộ củabảng 3936 Gl en Bun d oora 8507 Norman Bundoora 8452 Mary Balwyn SID Course 3936 101 1108 113 Enrol 6 z Đưa các bộ của bảng Student có SID trong các giá trị tìm thấy ở trên 8507 101 No Name Dept 113 BCS CSCE 101 MCS CSCE Course Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 4 Phân loại các ngôn ngữ truy vấn { Ngôn ngữđạisố z 1 câu hỏi = 1 tập các phép toán trên các quan hệ z Được biểu diễn bởi một biểu thức đại số (quan hệ) { Ngôn ngữ tính toán vị từ z 1 câu hỏi= 1 môtả của các bộ mong muốn z Được đặctả bởi mộtvị từ mà các bộ phảithoả mãn z Ph â n b i ệt 2 l ớp : 7 âbệt ớp { ngôn ngữ tính toán vị từ biếnbộ { ngôn ngữ tính toán vị từ biếnmiền N g ô n n g ữ đạ i s ố qua n h ệ g ô g ữ đạ s ố qua ệ Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 5 Tổng quan { Gồm các phép toán tương ứng với các thao tác trên các quan hệ { Mỗi phép toán z Đầu vào: một hay nhiều quan hệ z Đầu ra: một quan hệ { Biểu thức đại số quan hệ = chuỗi các phép toán { Kếtquả thựchiệnmộtbiểuthức đạisố là một 9 { Kết quả thực hiện một biểu thức đại số là một quan hệ { Được cài đặt trong phầnlớncáchệ CSDL hiện nay Phân loại các phép toán { Phép toán quan hệ Phé hiế ( jti ) z Phé p c hiế u ( p ro j ec ti on ) z Phép chọn (selection) z Phép kết nối (join) z Phép chia (division) { Phép toán tập hợp z Phép hợp (union) z Phép giao (intersection) Phé t ừ ( diff ) 10 z Phé p t r ừ ( diff erence ) z Phép tích đề-các (cartesian product) Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 6 Phép chiếu { Đ/n: Lựa chọn một số thuộc tính từ một quan hệ. { Cú pháp:  Ví dụ: đưa ra danh sách tên củatấtcả các sinh viên C1 C2 C5C4C3 C2 C5 ∏ )( , 2,1 R AA ∏ ) ( St d t 11 Id Name Suburb 1108 Robert Kew 3936 Glen Bundoora 8507 Norman Bundoora 8452 Mary Balwyn Student Name Robert Glen Norman Mary Kết quả ∏ ) ( St u d en t name Phép chọn { Đ/n: Lựa chọn các bộ trong một quan hệ thoả mãn ề đi ề u kiện cho trước. { Cú pháp:  Vídụ: đưa ra danh sách những sinh viên sống ở Bd R1 R1 R2 R2 R3 R3 R4 R4 R2 R2 R3 R3 )(R condition>< σ 12 B un d oora Id Name Suburb 1108 Robert Kew 3936 Glen Bundoora 8507 Norman Bundoora 8452 Mary Balwyn Student Id Name Suburb 3936 Glen Bundoora 8507 Norman Bundoora Kết quả )( " Student Bundoorasuburb= σ Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 7 Vi dụ -chọnvàchiếu { đưa ra tên của các sinh viên sống ở Bundoora ∏ = )( " Student Bundoorasuburbname σ Id Name Suburb Student K ếtquả 13 Id Name Suburb 1108 Robert Kew 3936 Glen Bundoora 8507 Norman Bundoora 8452 Mary Balwyn Name Glen Norman K ết quả Phép kếtnối { Đ/n: ghép các bộ từ 2 quan hệ thoả mãn điều ế ố kiện k ế t n ố i { Cú pháp:  Ví dụ: đưa ra danh sách các sinh viên và khoá h 2_1 RR conditionjoin >< >< a a r r b b r r x x x x a a r r b b r r c c v v r r x x s s y y t t z z El St d t r r r r x x x x 14 h ọc SID Id Name Suburb Course 1108 1108 Robert Kew 113 3936 3936 Glen Bundoora 101 8507 8507 Norman Bundoora 101 Id Name Suburb 1108 Robert Kew 3936 Glen Bundoora 8507 Norman Bundoora 8452 Mary Balwyn Student SID Course 3936 101 1108 113 8507 101 Enrol Id=SID Kết quả E nro l St u d en t SIDId = >< Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 8 Ví dụ -chọn, chiếuvàkếtnối { đưa ra tên của các sinh viên sống ở Bundoora ))(( ", EnrolStudent SIDIdBundoosuburbCoursename == ∏ >< σ Id Name Suburb 1108 Robert Kew 3936 Glen Bundoora và mã khoá học mà sinh viên đó đăng ký Student Name Course Kết quả 15 8507 Norman Bundoora 8452 Mary Balwyn SID Course 3936 101 1108 113 8507 101 Enrol Name Course Glen 101 Norman 101 Phép kếtnốitự nhiên { Đ/n: là phép kết nối với điều kiện bằng trên các thuộc tính trùng tên  Ví dụ: SID SNO 1108 21 1108 23 SID Course 3936 101 1108 113 Takes Enrol * 16 8507 23 8507 29 8507 101 SID SNO Course 1108 21 113 1108 23 113 8507 23 101 8507 29 101 Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 9 Phép kếtnối ngoài { Phép kết nối ngoài trái { Phép kết nối ngoài phải a a r r b b r r c c v v x x x x null a a r r b b r r c c v v r r x x s s y y t t z z 17 a a r r b b r r null null s s x x x x y y a a r r b b r r c c v v r r x x s s y y t t z z null null t t z z Ví dụ về phép kếtnối ngoài { Đưa ra danh sách mã số các sinh viên và mã ế khoá học mà sinh viên đó đăng ký n ế ucó ID Name Suburb 1108 Robert Kew 3936 Glen Bundoora 8507 Norman Bundoora 8452 Mary Balwyn Student SID Course 3936 101 1108 113 8507 101 Enrol 18 ID Name Suburb Course 1108 Robert Kew 113 3936 Glen Bundoora 101 8507 Norman Bundoora 101 8452 Mary Balwyn null Kết quả Nhập môn cơ sở dữ liệu Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 10 Phép chia { Đ/n: cho R 1 và R 2 lần lượt là các quan hệ n và m ế ngôi. K ế t quả của phép chia R 1 cho R 2 là một quan hệ (n-m) ngôi { Cú pháp: R 1 :R 2 Ví d a x z a a a b c x y z x y :: 19  Ví d ụ: :: Name Course Systems BCS Database BCS Database MCS Algebra MCS Subject Course BCS MCS Course Name Database Kết quả Phép hợp { Đ/n: gồm các bộ thuộc ít nhất một trong hai quan ầ hệ đ ầ u vào z 2 quan hệ khả hợp được xác định trên cùng miền giá trị { Cú pháp: R 1 ∪ R 2 Ví d R1 R2 R1 R2 ∪ Name Course K ế t qu ả 20  Ví d ụ: Name Course Systems BCS Database BCS Database MCS Algebra MCS Subject Name Course DataMining MCS Writing BCS Subject2 ∪ Name Course Systems BCS Database BCS Database MCS Algebra MCS DataMinin g MCS Writing BCS K ế t qu ả [...]... dữ liệu Các thành phần của SQL Ngôn ngữ mô tả dữ liệu (Data Definition Language) Cấu trúc các bảng CSDL ấ Các mối liên hệ của dữ liệu Quy tắc, ràng buộc áp đặt lên dữ liệu Ngôn ngữ thao tác dữ liệu (Data Manipulation Language) Thêm, xoá, sửa dữ liệu trong CSDL Ngôn ngữ quản lý dữ liệu (D t C t l L Data Control Language) Thay đổi cấu trúc của các bảng dữ liệu Khai báo bảo mật thông tin Quyền hạn của... chế với các biểu thức an toàn Phép tính vị từ biến miền hạn chế với các biểu thức an toàn So sánh đặc điểm của 3 ngôn ngữ 42 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 21 Nhập môn cơ sở dữ liệu Khả năng bổ sung của các ngôn ngữ Tính toán số học: các phép toán số học +,-,*,/ Lệnh gán và hiển thị: hiển thị quan hệ kết quả hay gán một quan hệ đã được tính toán đến một tên quan hệ khác... hay lớn nhất 43 Bài tập biến đổi tương đương Viết định nghĩa các phép toán ĐSQH với các biểu thức tính toán vị từ ể Tìm biểu thức tương đương trong ngôn ngữ ĐSQH và ngôn ngữ tính toán vị từ 44 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 22 Nhập môn cơ sở dữ liệu 45 Ngôn ngữ QBE gô gữ Q Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 23 Nhập môn cơ sở dữ liệu QBE (Query-By-Example)... 09 Dancing 8452 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN Glen 8507 Mary Balwyn 09 Dancing 24 12 Nhập môn cơ sở dữ liệu Bài tập Biểu diễn câu hỏi truy vấn bằng ngôn ngữ đại số quan hệ ố Tính kết quả của biểu thức 25 Ngôn ngữ tính toán vị từ gô gữ oá ị ừ Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 13 Nhập môn cơ sở dữ liệu Tổng quan Ứng dụng logic toán vào CSDL Nhắc... b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 28 Nhập môn cơ sở dữ liệu Ngôn ngữ SQL gô gữ SQ SQL (Structured Query Language) 1975: SEQUEL System-R 1976: SEQUEL2 1978/79: SQL System-R 1986: chuẩn SQL-86 1989: h ẩ SQL-89 1989 chuẩn SQL 89 1992: chuẩn SQL-92 1996: chuẩn SQL-96 58 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 29 Nhập môn cơ sở dữ liệu Các thành phần của SQL Ngôn ngữ mô. .. (¬P1(t)) P1 ⇒ P2 ⇔ ¬P1 ∨ P2 32 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 16 Nhập môn cơ sở dữ liệu Bài tập Biểu diễn câu hỏi bằng ngôn ngữ tính toán vị từ biến bộ ế 33 Tính an toàn của các biểu thức Đặt vấn đề: {t| ¬(t∈r )} K/n miền giá trị của biểu thức: DOM(P) Các hằng xuất hiện trong P Các giá trị của các thuộc tính của các bộ của các quan hệ xuất hiện trong P Ví dụ: P(t) = t∈Sport ^... Tính an toàn của các biểu thức Đ/n: một biểu thức { | P(x1, …, xn)} là an toàn nếu tất cả các giá trị xuất hiện ế ấ ấ trong kết quả là các giá trị từ DOM(P) 40 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 20 Nhập môn cơ sở dữ liệu Bài tập Biểu diễn câu hỏi bằng ngôn ngữ tính toán vị từ biến miền ế ề 41 Nhận xét Sự tương đương của 3 ngôn ngữ Đại số quan hệ Phép tính vị từ... (σ,Π,∪,\,x) Bài tập: chứng minh tính đầy đủ của QBE 54 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 27 Nhập môn cơ sở dữ liệu Định nghĩa dữ liệu trong QBE sử dụng cùng qui cách và giao diện đồ hoạ như đối với t ới truy vấn ấ I.Student I ID Name Suburb KEY I Y N N TYPE I CHAR(5) CHAR(30) CHAR(30) DOMAIN I Sid SName Surb INVERSION I Y N N 55 Định nghĩa dữ liệu trong QBE (2) Các khung nhìn... hình thức { | P(x1, …, xn)} x1, …, xn là các biến miền hay các hằng miền P: là một biểu thức chỉ có các biến tự do xi 36 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 18 Nhập môn cơ sở dữ liệu Các biểu thức nguyên tố ∈ r r là 1 quan hệ trên n thuộc tính x1, …, xn là các biến miền hay các hằng miền xθy x và y là các biến miền θ là một phép so sánh đơn giản (< , =... thức đại số quan hệ tương đương σ suburb="Bundoora ( Student ) 48 Vũ Tuyết Trinh, b/m Các hệ thống thông tin, khoa CNTT, ĐHBKHN 24 Nhập môn cơ sở dữ liệu Truy vấn trên một quan hệ (tiếp) Lựa chọn tất cả các cột Student ID Name P Suburb Bundoora Sắp xếp Student ID Name P.AO(1) Suburb P.AO(2) • AO: sắp xếp tăng dần • DO: sắp xếp giảm dần 49 Các truy vấn trên nhiều quan hệ Đưa ra tên của các sinh viên

Ngày đăng: 27/02/2015, 10:33

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