Slide Cơ sở dữ liệu - GV Nguyễn Hồng Phương

LI
lienhejb
1 lượt tải
53
0
Cơ sở dữ liệu - GV. Nguyễn Hồng Phương

Nội dung tài liệu

Trang 1

Thông tinThông tin chungchung CCơơ ssởở ddữữ liliệệuu • Giảng viên – Nguyễn Hồng Phương – Bộ môn Hệ thống thông tin, khoa CNTT, NguyNguyễễn Hn Hồồng Phng Phươươngng phòng 325 – C1 phuongnh-phuongnh-fit@mail.hut.edu.vnfit@mail.hut.edu.vn – Email: phuongnh-fit@mail.hut.edu.vn • Giờ tiếp sinh viên tại Bộ môn: BBộộ môn Hmôn Hệệ ththốống thôngng thông tintin – Chiều thứ hai hàng tuần. ViViệện Côngn Công nghnghệệ thông tin vthông tin vàà TruyTruyềền thôngn thông Đạại hhọc BBááchch KhoaKhoa HHàà NNội – Ngoài ra, xin liên hệ trước. Đ i ọc ội 1 2 TTổổng quanng quan vvềề môn hmôn họọcc ĐĐánhánh gigiáá mônmôn hhọọcc • Mục tiêu:Sau khi học xong môn học này, sinh viên ngành công nghệ • Dự lớp đầy đủ, tích cực xây dựng bài thông tin có thể: • Kiểm tra giữa kỳ – Chỉ ra nguyên lý của hệ cơ sở dữ liệu • Kiểm tra cuối kỳ (CSDL). – Thiết kế và xây dựng một hệ CSDL. • Khối lượng:4 tc, trong 15 tuần 3 4 TàTàii liliệệu hu họọc tc tậậpp NNộội dungi dung mônmôn hhọọcc • Bài giảng trên lớp • Sách tham khảo: • Chương 1: Đại cương về các hệ CSDL. – Nguyễn Kim Anh, Nguyên lý của các hệ cơ sở dữ liệu, • Chương 2: Các mô hình dữ liệu. NXB Đại học Quốc gia, Hà Nội, 2004. – Tô Văn Nam, Giáo trình Cơ sở dữ liệu, NXB Giáo dục, • Chương 3: Ngôn ngữ định nghĩa và 2006. thao tác dữ liệu đối với mô hình quan – Nguyễn Thiên Bằng, Phương Lan, Giáo trình SQL Server 2000, 2004. hệ. – Nguyễn Ngọc Minh, Hoàng Đức Hải, Trần Tiến Dũng, Tự • Chương 4: Lý thuyết thiết kế CSDL học Microsoft SQL Server 2000 trong 21 ngày, NXB Lao động-Xã hội, 2002. quan hệ. – J.D.Ullman, A First Course in Database Systems, Prentice-Hall,1997. • Chương 5: Tối ưu hóa câu truy vấn – J.D.Ullman, Principles of Database and Knowledge-Base Systems,vol.1, Computer Science Press,1988. • Chương 6: An toàn và toàn vẹn dữ – Các tài liệu khác… liệu. 5 6 goupee.com fb.com/goupee.vn fb.com/groups/goupee 1

Trang 2

Danh ngônDanh ngôn HHồồ ChíChí MinhMinh “Trời có bốn mùa: Xuân, Hạ, Thu, Đông; Đất có bốn phương: Đông, Tây, Nam, Bắc; Người có bốn đức: Cần, Kiệm, Liêm, Chính; Thiếu một mùa không thể thành Trời; Thiếu một phương không thể thành Đất; Thiếu một đức không thể thành Người.” 7 8 goupee.com fb.com/goupee.vn fb.com/groups/goupee 2

Trang 3

NNộội dungi dung chchươương nng nààyy ChChươương 1ng 1 ) • 1.1 Các hệ thống xử lý tệp ĐạĐại ci cươương vng vềề cácácc hhệệ ccơơ ssởở ddữữ liliệệuu truyền thống và những hạn chế của nó. NguyNguyễễn Hn Hồồng Phng Phươươngng • 1.2 Các hệ CSDL: khái niệm, khả năng, kiến trúc, người phuongnh-phuongnh-fit@mail.hut.edu.vnfit@mail.hut.edu.vn dùng của một hệ quản trị BBộộ môn Hmôn Hệệ ththốống thôngng thông tintin CSDL. ViViệện Côngn Công nghnghệệ thông tin vthông tin vàà TruyTruyềền thôngn thông • 1.3 Sự phân loại các hệ ĐạĐại hi họọc Bc Bááchch KhoaKhoa HHàà NNộộii CSDL. 1 2 1.1 C1.1 Cáácc hhệệ ththốống xng xửử lý tlý tệệpp truytruyềền thn thốốngng CáCácc hhệệ ththốống xng xửử lý tlý tệệp truyp truyềền thn thốốngng • Bước khởi đầu của quá trình • Mỗi chương trình ứng dụng tin học hóa doanh nghiệp. định nghĩa và quản lý các tệp • Tập trung vào nhu cầu xử lý dữ liệu dữ liệu của riêng nó. của các phòng riêng lẻ trong tổ chức • Trước khi xuất hiện các phần mà không xem xét tổng thể tổ chức này. mềm hệ quản trị CSDL, trong • Viết một chương trình mới quá khứ các hệ thống trên cơ đối với mỗi ứng dụng đơn lẻ, sở tệp đã được tạo lập để xử không có kế hoạch, không có lý một số lượng lớn dữ liệu. mô hình hướng đến sự tăng trưởng. 3 4 HHạạn chn chếế ccủủa ca cáácc hhệệ ththốốngng NNộội dungi dung chchươương nng nààyy xxửử lý tlý tệệp truyp truyềền thn thốốngng • Dư thừa và không nhất quán dữ liệu • 1.1 Các hệ thống xử lý tệp • Khó khăn trong truy nhập dữ liệu truyền thống và những hạn chế của nó. • Cô lập và hạn chế chia sẻ dữ liệu ) • 1.2 Các hệ CSDL: khái niệm, • Các vấn đề về an toàn và toàn vẹn khả năng, kiến trúc, người • Các vấn đề về độ tin cậy dùng của một hệ quản trị • Sự phụ thuộc dữ liệu của các chương CSDL. trình ứng dụng • 1.3 Sự phân loại các hệ CSDL. 5 6 goupee.com fb.com/goupee.vn fb.com/groups/goupee 1

Trang 4

1.2 C1.2 Cáácc hhệệ ccơơ ssởở ddữữ liliệệuu Ví dụ về quản lý đào tạo • Thông tin cần quan tâm • CSDL (database) là gì ? – Khóa học, lớp học, sinh viên, giáo viên, • Tại sao phải sử dụng CSDL ? môn học,… • Tại sao phải tìm hiểu về các hệ CSDL – Thông tin về sinh viên: thông tin cá nhân, thông tin học tập,… (database systems) ? – Thông tin về môn học: khối lượng, giáo viên, lịch học,… • Cần lưu trữ những thông tin đa dạng Cơ sở dữ liệu 7 8 VíVí ddụụ: khai: khai ththáácc thôngthông tintin “H“Hììnhnh dungdung”” vvềề xây dxây dựựng mng mộột CSDLt CSDL • Sinh viên – Các môn học của Khoa Công nghệ thông • Yêu cầu tin ? – Lưu trữ thông tin cần thiết một cách chính xác –Điểm thi môn “Hệ cơ sở dữ liệu” ? – Truy xuất thông tin hiệu quả • Giáo viên • Thực hiện – Danh sách sinh viên lớp Tin2-K49 ? – Xác định yêu cầu nghiệp vụ – Thời khóa biểu của lớp Tin2-K49 ? – Xác định thông tin cần lưu trữ • Giáo vụ – Xác định cách thức lưu trữ • Cần công cụ trợ giúp xây dựng một CSDL – Danh sách sinh viên K47 tốt nghiệp loại giỏi ?... Phần mềm quản trị CSDL Phần mềm ứng dụng 9 10 CáCácc khkhááii niniệệm cm cơơ bbảảnn CCơơ ssởở ddữữ liliệệu (database)u (database) • Là một tập hợp các dữ liệu ứng dụng – Biểu diễn một vài khía cạnh nào đó của thế hệ CSDL giới thực – Có liên hệ logic thống nhất CSDL – Được thiết kế và bao gồm những dữ liệu phục vụ một mục đích nào đó. • Là một bộ sưu tập các dữ liệu tác nghiệp được lưu trữ lại và được các hệ ứng dụng của một xí nghiệp cụ thể nào đó sử dụng. Hệ QTCSDL 11 12 goupee.com fb.com/goupee.vn fb.com/groups/goupee 2

Trang 5

HHệệ ququảản trn trịị ccơơ ssởở ddữữ liliệệuu HHệệ ccơơ ssởở ddữữ liliệệuu (Database Management System-(Database Management System-DBMS)DBMS) • Là một hệ thống phần mềm cho • Là một hệ thống gồm 4 thành phần phép – Hệ quản trị CSDL –Định nghĩa, tạo lập: xác định kiểu, cấu – Phần cứng trúc, ràng buộc dữ liệu, lưu trữ dữ liệu trên các thiết bị nhớ. – CSDL và phần mềm ứng dụng – Thao tác: truy vấn, cập nhật, kết xuất,… – Những người sử dụng các CSDL cho các ứng dụng khác nhau • Ví dụ: Hệ quản lý đào tạo, hệ quản lý • Ví dụ: MS SQL Server, DB2, nhân sự, hệ quản lý kinh doanh,… MS Access, Oracle, FoxPro,… 13 14 HHệệ CSDLCSDL CáCácc ttíínhnh nnăăng cng củủa ha hệệ ququảản trn trịị CSDLCSDL • Quản lý dữ liệu tồn tại lâu dài Hệ Ứng dụng –Định nghĩa dữ liệu CSDL – Quản lý lưu trữ • Truy xuất dữ liệu một cách hiệu quả Hệ Quản Trị CSDL – Biểu diễn các thao tác dữ liệu – Xử lý câu hỏi – Quản trị giao dịch CSDL CSDL 15 16 CáCácc ttíínhnh nnăăng cng củủa ha hệệ ququảản trn trịị CSDLCSDL CáCácc ngônngôn ngngữữ • Hỗ trợ ít nhất một mô hình dữ liệu • Ngôn ngữ định nghĩa dữ liệu (Data Definition Language - DDL) • Đảm bảo tính độc lập dữ liệu – Cấu trúc dữ liệu – Mối liên hệ giữa các dữ liệu và quy tắc, ràng • Hỗ trợ các ngôn ngữ cấp cao nhất buộc áp đặt lên dữ liệu định cho phép người sử dụng định • Ngôn ngữ thao tác dữ liệu (Data nghĩa cấu trúc của dữ liệu, truy nhập Manipulation Language - DML) – Tìm kiếm, thêm, xóa, sửa dữ liệu trong CSDL và thao tác dữ liệu • Ngôn ngữ điều khiển dữ liệu (Data • Điều khiển truy nhập Control Language - DCL) – Thay đổi cấu trúc của các bảng dữ liệu • Phục hồi dữ liệu – Khai báo bảo mật thông tin – Quyền hạn của người dùng trong khai thác CSDL 17 18 goupee.com fb.com/goupee.vn fb.com/groups/goupee 3

Trang 6

SSựự trtrừừu tu tượượng hng hóóaa ddữữ liliệệuu TTươươngng ứứng 3ng 3 mmứức vc vớới ngôni ngôn ngngữữ PascalPascal Type khach_hang = record ... ten:string; Khung nhìn 1 Khung nhìn n ngay_sinh:string; Mức khung nhìn (ngoài) dia_chi:string; mô tả cách mà người sử dụng có thể nhìn thấy dữ end; liệu • Mức vật lý: một bản ghi khach_hang được mô tả Sơ đồ khái niệm như một khối nhớ, chương trình dịch che dấu các (logic) định nghĩa cấu trúc logic chi tiết mức này đối với người lập trình. Mức quan niệm của dữ liệu, dữ liệu nào được lưu trữ và mối quan • Mức logic: mỗi bản ghi được mô tả bởi một định (logic) hệ giữa các dữ liệu nghĩa kiểu, người lập trình sử dụng ngôn ngữ lập trình làm việc tại mức trừu tượng này. định nghĩa cấu trúc các • Mức khung nhìn: người sử dụng máy tính thấy Sơ đồ trong tệp và chỉ dẫn được sử một tập các chương trình ứng dụng, che dấu (vật lý) dụng trong cơ sở dữ liệu những chi tiết về các kiểu dữ liệu Mức lưu trữ (cách lưu trữ dữ liệu như thế nào) (trong) 19 20 KiKiếến trn trúúcc ccủủa ma mộột ht hệệ ququảản trn trịị CSDLCSDL QuQuảản lýn lý llưưu tru trữữ Các thay đổi sơ đồ Các truy vấn Các thay đổi dữ liệu • Yêu cầu – lưu trữ và truy xuất Bộ quản lý lưu trữ Bộ xử lý dữ liệu trên các thiết Quản lý buffer Quản Bộ quản trị bị nhớ lý câu hỏi giao giao dịch • Thực hiện Quản lý tệp dịch – Tổ chức tối ưu dữ liệu Bộ quản lý lưu trữ trên thiết bị nhớ – Tương tác hiệu quả với bộ quản lý tệp Metadata & Data dictionary Data & index (từ điển dữ liệu) (chỉ mục) Dữ liệu (data) Siêu dữ liệu (metadata) 21 22 XXửử lý câulý câu hhỏỏii QuQuảản trn trịị giao dgiao dịịchch • Yêu cầu Bộ xử lý câu hỏi – Tìm kiếm dữ liệu trả Bộ biên dịch • Yêu cầu lời cho một yêu cầu –Định nghĩa giao dịch: một tập các thao truy vấn. Bộ tối ưu tác được xử lý như một đơn vị không • Thực hiện Bộ đánh giá chia căt được. – Biến đổi truy vấn ở –Đảm bảo tính đúng đắn và tính nhất mức cao thành các Bộ quản lý quán của dữ liệu. yêu cầu có thể hiểu lưu trữ • Thực hiện được bởi hệ CSDL. – Lựa chọn một kế – Quản lý điều khiển tương tranh. hoạch tốt nhất để trả Metadata & Data & index – Phát hiện lỗi và phục hồi CSDL Data dictionary lời truy vấn này. 23 24 goupee.com fb.com/goupee.vn fb.com/groups/goupee 4

Trang 7

NgNgườười di dùùngng NgNgườười di dùùngng • Người phân tích hệ thống và phát triển ứng • Người thiết kế và cài đặt hệ QTCSDL: dụng: chịu trách nhiệm xác định yêu cầu của chịu trách nhiệm thiết kế và cài đặt các người dùng cuối, xác định các giao dịch cần thiết module của hệ QTCSDL và các giao diện để đáp ứng các yêu cầu người dùng. Người lập dưới hình thức các gói phần mềm trình ứng dụng cài đặt những yêu cầu này trong chương trình, kiểm thử, gỡ rối, lập tài liệu cho chương trình • Người phát triển công cụ: chịu trách nhiệm thiết kế và cài đặt các gói phần mềm • Người thiết kế CSDL: chịu trách nhiệm xác định hỗ trợ cho việc thiét kê, sử dụng cũng như dữ liệu lưu trữ trong CSDL và cấu trúc biểu diễn tăng cường hiệu năng của các hệ CSDL. và lưu trữ những dữ liệu này 25 26 NgNgườười di dùùngng NNộội dungi dung chchươương nng nààyy • 1.1 Các hệ thống xử lý tệp • Người sử dụng cuối: là người khai thác các hệ CSDL truyền thống và những hạn chế của nó. • Người quản trị CSDL: chịu trách nhiệm cho phép truy nhập CSDL, điều phối và kiểm tra sử • 1.2 Các hệ CSDL: khái niệm, dụng CSDL, quản lý tài nguyên phần cứng và phân mềm khi cần thiết khả năng, kiến trúc, người dùng của một hệ quản trị • Người bảo trì hệ thống: là những người quản trị hệ thống chịu trách nhiệm việc hoạt động và CSDL. bảo trì môi trường (phần cứng và phần mềm) ) cho hệ CSDL • 1.3 Sự phân loại các hệ CSDL. 27 28 1.3 Phân1.3 Phân loloạại ci cáácc hhệệ CSDLCSDL CáCác hc hệệ CSDL tCSDL tậập trungp trung • Mô hình dữ liệu • Hệ CSDL cá nhân: một người sử dụng đơn – Mạng vs. phân cấp vs. quan hệ vs. hướng đối lẻ vừa thiết kế, tạo lập CSDL, cập nhật, tượng vs. ... bảo trì dữ liệu, lập và hiển thị báo cáo. • Số người sử dụng đảm nhiệm vai trò: người quản trị CSDL, người viết chương trình ứng dụng, end-user. – Một người dùng vs. nhiều người dùng • Hệ CSDL trung tâm: dữ liệu được lưu trữ • Tính phân tán của CSDL trên một máy tính trung tâm. – Tập trung vs. Phân tán • Hệ CSDL khách-chủ: • Tính thống nhất của dữ liệu – Các máy tính trung tâm lớn đắt so với các – Đồng nhất vs. Không đồng nhất máy nhỏ và máy trạm. – Các ứng dụng máy khách truy nhập dữ liệu • ... được quản lý bởi máy chủ. 29 30 goupee.com fb.com/goupee.vn fb.com/groups/goupee 5

Trang 8

CáCác hc hệệ CSDL tCSDL tậập trung (tip trung (tiếếp)p) CáCác hc hệệ CSDL phân táCSDL phân tánn • CSDL phân tán? Là một tập các CSDL có quan hệ logic với nhau nhưng được trải ra Hệ CSDL trung trên nhiều trạm làm việc của một mạng tâm máy tính. • Có 2 tính chất: quan hệ logic và phân tán Hệ CSDL cá nhân • Hệ QTCSDL phân tán: Là một hệ thống phần mềm cho phép tạo lập CSDLPT và điều khiển các truy nhập đối với CSDLPT này. • Chia ra 2 loại: CSDLPT thuần nhất và không thuần nhất Hệ CSDL khách- chủ 31 32 CáCác hc hệệ CSDLPT (tiCSDLPT (tiếếp)p) KKếết lut luậậnn • CSDL cho phép lưu trữ và khai thác dữ liệu một cách thống nhất và hiệu quả (đặc biệt trong trường hợp khối lượng dữ liệu lớn). • Sự trừu tượng về dữ liệu và tính độc lập dữ liệu cho phép phát triển ứng dụng “dễ dàng hơn”. • Hệ quản trị CSDL cung cấp các công cụ hữu hiệu trợ giúp việc tạo lập CSDL và phát triển ứng dụng 33 34 SSửử ddụụng king kiếến thn thứức mônc môn hhọọcc CáCácc đđiiểểm cm cầần ln lưưu ýu ý trongtrong nànàyy trongtrong ttươương laing lai chchươương nng nààyy ‘‘More than 80 % of real world computer applications are associated with databases’’* • Cách tiếp cận tệp vs. cách tiếp cận * Korth & Silberschatz. Database System Concepts. CSDL • CSDL vs. hệ QTCSDL vs. hệ CSDL • Kiến trúc 3 mức của hệ CSDL • Các chức năng chính của một hệ QTCSDL Phát triển Nghiên cứu nghiên cứu và • Người sử dụng trong một hệ CSDL ứng dụng phát triển • Phân loại các hệ CSDL 35 36 goupee.com fb.com/goupee.vn fb.com/groups/goupee 6

Trang 9

LLờời hay ýi hay ý đẹđẹpp Điều chúng ta biết chỉ là một giọt nước, điều không biết mênh mông như đại dương Einstein 37 38 goupee.com fb.com/goupee.vn fb.com/groups/goupee 7

Trang 10

NNộội dungi dung CáCácc mômô hhììnhnh ddữữ liliệệuu • Tổng quan về mô hình dữ liệu • Mô hình phân cấp • Mô hình mạng NguyNguyễễn Hn Hồồng Phng Phươươngng • Mô hình quan hệ phuongnh-phuongnh-fit@mail.hut.edu.vnfit@mail.hut.edu.vn • Mô hình thực thể liên kết BBộộ môn Hmôn Hệệ ththốống thôngng thông tintin • Mô hình hướng đối tượng ViViệện Côngn Công nghnghệệ thông tin vthông tin vàà TruyTruyềền thôngn thông • Đánh giá, bài tập ĐạĐại hi họọc Bc Bááchch KhoaKhoa HHàà NNộộii 1 2 TTổổng quanng quan vvềề mô hmô hììnhnh ddữữ liliệệuu TTổổng quan...(ting quan...(tiếếp)p) • Mô hình dữ liệu [Codd, 1980] gồm: – Một tập hợp các cấu trúc của dữ liệu • Nhiều mô hình còn bao gồm cả một tập – Một tập hợp các phép toán để thao tác với các các phép toán để thao tác các dữ liệu dữ liệu • Mô hình thuộc dạng ngữ nghĩa: tập trung – Một tập hợp các ràng buộc về dữ liệu về ngữ nghĩa của dữ liệu như mô hình • Mô hình dữ liệu là một tập hợp các khái thực thể liên kết, sử dụng để hỗ trợ người niệm dùng để mô tả: dùng có cái nhìn khái quát về dữ liệu – Dữ liệu • Mô hình thuộc dạng khái niệm: tập trung – Ngữ nghĩa của dữ liệu vào cách thức tổ chức dữ liệu tại mức khái – Các mối quan hệ trong dữ liệu niệm như mô hình mạng, mô hình liên kết, – Các ràng buộc dữ liệu mô hình quan hệ, độc lập với DBMS và hệ thống phần cứng để cài đặt cơ sở dữ liệu 3 4 VàVài ni néét vt vềề llịịch sch sửử MMộột vt vààii mômô hhììnhnh ddữữ liliệệuu Mô hình DB2,DB2, quan hệ ORACLE-10i,ORACLE-10i, Mô hình Mô hình SQL ServerSQL Server • Mô hình phân cấp phân cấp quan hệ mở rộng...... System R(81), DB2,System R(81), DB2, XML • Mô hình mạng ORACLE, SQLORACLE, SQL IMS,IMS, Server, Sybase, ... dbXML,natix,dbXML,natix, • Mô hình quan hệ System 2k, Server, Sybase, ... System 2k, Tamino,...Tamino,... ...... 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 • Mô hình thực thể liên kết O2, ORION, • Mô hình hướng đối tượng Mô hình O2, ORION, IRIS, ...IRIS, ... Thực thể-liên kết • Mô hình bán cấu trúc Mô hình IRDS(87),IRDS(87), mạng CDD+, ...CDD+, ...Mô hình • Mô hình dữ liệu của XML DMS(65), hướng đối Mô hình bán DMS(65), Lore (97),Lore (97), CODASYL (71),CODASYL (71), tượng cấu trúc ... IDMS, IDS ... IDMS, IDS 5 6 goupee.com fb.com/goupee.vn fb.com/groups/goupee 1

Trang 11

Mô hMô hììnhnh ddữữ liliệệu phânu phân ccấấpp ĐặĐặt vt vấấnn đềđề ((Hierarchical data modelHierarchical data model)) • Đặc điểm của các mô hình dữ liệu? • Ra đời những năm 60-65 • Sự khác nhau giữa các mô hình dữ • Biểu diễn bằng cây liệu? – Quan hệ cha-con – Mỗi nút có 1 cha duy nhất • Các mô hình dữ liệu phổ biến ngày – 1 CSDL = 1 tập các cây = 1 rừng nay • Các khái niệm cơ bản – Bản ghi – Móc nối – Các phép toán: GET, GET UNIQUE, GET NEXT, GET NEXT WITHIN PARENT,… 7 8 Mô hMô hììnhnh ddữữ liliệệu phânu phân ccấấp –p – VVíí ddụụ Mô hMô hììnhnh ddữữ liliệệu phânu phân ccấấpp • Ưu điểm giao_vien – Dễ xây dựng và thao tác lop – Tương thích với các lĩnh vực tổ chức phân cấp – Ngôn ngữ thao tác đơn giản: duyệt cây. • Nhược điểm: – Sự lặp lại của các kiểu bản ghi Æ dữ liệu dư sinh_vien mon_hoc mon_hoc thừa và không nhất quán. • Giải pháp: bản ghi ảo – Hạn chế trong biểu diễn ngữ nghĩa của các diem_thi móc nối giữa các bản ghi (chỉ cho phép quan hệ 1-n) 9 10 Mô hMô hììnhnh ddữữ liliệệu mu mạạngng Mô hMô hììnhnh ddữữ liliệệu mu mạạng –ng – VVíí ddụụ ((Network data modelNetwork data model)) • Sự ra đời – Sử dụng phổ biến từ những năm 60, được định nghĩa lại vào giao_vien năm 71 • Biểu diễn bằng đồ thị có hướng giang_day • Các khái niệm cơ bản – Tập bản ghi (record) lop hoc mon_hoc • Kiểu bản ghi (record type) • Các trường (field) – Móc nối gom co_diem • Tên của móc nối • Chủ (owner) – thành viên (member): theo hướng của móc nối • Kiểu móc nối: 1-1, 1-n, đệ quy sinh_vien co diem_thi – Các phép toán • Duyệt: FIND, FIND member, FIND owner, FIND NEXT • Thủ tục: GET 11 12 goupee.com fb.com/goupee.vn fb.com/groups/goupee 2

Trang 12

Mô hMô hììnhnh ddữữ liliệệu mu mạạngng Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ • Ưu điểm • Sự ra đời: vào năm 1970[Codd, 1970] –Đơn giản • Dữ liệu được biểu diễn dưới dạng bảng – Có thể biểu diễn các ngữ nghĩa đa dạng • Là mô hình dữ liệu khái niệm phổ biến cho với kiểu bản ghi và kiểu móc nối đến tận thời điểm hiện tại – Truy vấn thông qua phép duyệt đồ thị • Dựa trên lý thuyết toán học, đồng thời (navigation) cũng gần với cấu trúc tệp và cấu trúc dữ • Nhược điểm: liệu nên có hai loại thuật ngữ liên quan: – Số lượng các con trỏ lớn – Thuật ngữ toán học: quan hệ, bộ, thuộc tính – Hạn chế trong biểu diễn ngữ nghĩa của – Thuật ngữ hướng dữ liệu: bảng, bản ghi, trường các móc nối giữa các bản ghi 13 14 VíVí ddụụ MON_HOC maMH tenmon soHT Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ mô hmô hììnhnh CNTT01VíVí ddNhụụập môn CSDL 4 ddữữ liliệệuu CNTT02 Truyền DL và mạng 4 CNTT03 Phân tích và thiết kế hệ thống 4 quan hquan hệệ HTTT01 Quản lý dự án 3 • Các khái niệm cơ bản LOP – Thuộc tính, miền thuộc tính malop lop khoa GVCN loptruong – Quan hệ IT4 Tin 4 CNTT Ng. V. Anh Trần T. Bình IT5 Tin 5 CNTT Lê A. Văn Ng. Đ. Trung – Khóa IT6 Tin 6 CNTT Ng. T. Thảo Trần M. Quế IT7 Tin 7 CNTT Ng. V. Quý Ng. T. Phương SINH_VIEN maSV tenSV ngaysinh gt diachi malop SV0011 Trần T. Bình 1/4/1981 0 21 T. Q. B IT4 SV0025 Ng. Đ. Trung 3/2/1980 1 56 Đ. C. V IT5 SV0067 Trần M. Quế 26/3/1982 0 45 H. B. T IT6 SV0034 Ng. T. Phương 29/2/1980 0 86 L. T. N IT7 15 16 Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ • Thuộc tính (~trường): là các đặc tính của • Quan hệ (~bảng):Cho n miền giá trị D , 1 một đối tượng D2 , …, Dn không nhất thiết phân biệt, r là • Mỗi thuộc tính được xác định trên một miền một quan hệ trên n miền giá trị đó nếu r là một tập các n-bộ (d1 , d2 , …, dn ) sao giá trị nhất định gọi là miền thuộc tính cho d D i i • Ví dụ: • Một quan hệ có thể được biểu diễn dưới – Sinhviên (MãSV, TênSV, Nămsinh, GiớiTính, ĐịaChỉ) dạng 1 bảng trong đó 1 dòng trong bảng – dom(MãSV) = {char(5)} tương đương với 1 bộ , một cột trong bảng tương đương với 1 thuộc tính của quan hệ – dom(TênSV) = {char(30)} • Bậc của 1 quan hệ là số các thuộc tính – dom(Nămsinh) = {date} trong quan hệ – dom(GiớiTính) = {0, 1} • Lực lượng của 1 quan hệ là số các bộ – dom(ĐịaChỉ) = {char(50)} trong quan hệ 17 18 goupee.com fb.com/goupee.vn fb.com/groups/goupee 3

Trang 13

Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ • Định nghĩa (tiếp): Cho U = {A , A • Định nghĩa Khoá của quan hệ r trên 1 2 tập thuộc tính U = {A , A , …, A } , …, An} là một tập hữu hạn các 1 2 n thuộc tính trong đó dom(A ) = D, r là một tập K U sao cho với bất kỳ 2 i i bộ t , t thuộc r đều tồn tại một là quan hệ trên tập thuộc tính U ký 1 2 hiệu là r(U) nếu: thuộc tính A thuộc K mà t1[A] ≠ t2 [A] r ⊆ D ×D ×...×D • Một quan hệ có thể có nhiều khoá 1 2 n • U được gọi là sơ đồ quan hệ (lược • Nếu K là khoá của r thì mọi K’ sao đồ quan hệ) cho K K’ đều là khoá của r. K’ được gọi là siêu khoá của r 19 20 Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ Mô hMô hììnhnh ddữữ liliệệu quanu quan hhệệ VíVí ddụụ:: • Định nghĩa: K là khoá tối • Quan hệ: SinhViên(MãSV, TênSV, NămSinh, thiểu của r nếu K là một khoá GiớiTính, Lớp) của r và bất kỳ tập con thực sự SV001 Nguyễn Văn An 1982 1 Tin 7 nào của K đều không phải là SV002 Nguyễn Văn An 1985 1 HTTT khoá của r SV003 Lê Văn Cường 1981 1 HTTT • Định nghĩa: Một tập con K U SV004 Nguyễn Thùy Linh 1981 0 BK65 được gọi là khoá ngoài của • Siêu khoá: {MãSV, HọTên}; quan hệ r(U) tham chiếu đến • Khoá tối thiểu: {MãSV}; {HọTên, NămSinh} một quan hệ r’ nếu K là khoá • Khoá ngoài: TênLớp nếu coi nó là khoá chính chính của r’ của quan hệ Lớp 21 22 Mô hìMô hình dnh dữữ liliệệu quan hu quan hệệ -- Mô hMô hììnhnh ththựực thc thểể liên kliên kếếtt nhnhậận xén xétt ((Entity-Entity-Relationship data modelRelationship data model)) • Cho phép mô tả các dữ liệu có liên quan • Ưu điểm trong một xí nghiệp trong thế giới thực dưới dạng các đối tượng và các mối quan hệ của – Dựa trên lý thuyết tập hợp chúng. – Khả năng tối ưu hoá các xử lý phong • Được sử dụng cho bước đầu thiết kế CSDL, phú làm nền tảng để ánh xạ sang một mô hình • Nhược điểm khái niệm nào đó mà Hệ quản trị CSDL sẽ sử dụng – Hạn chế trong biểu diễn ngữ nghĩa • Trong mô hình thực thể liên kết, CSDL được – Cấu trúc dữ liệu không linh hoạt mô hình hóa như là: – Một tập hợp các thực thể – Liên hệ giữa các thực thể này 23 24 goupee.com fb.com/goupee.vn fb.com/groups/goupee 4

Trang 14

Mô hMô hììnhnh ththựực thc thểể liên kliên kếếtt Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... CáCácc khkhááii niniệệm cm cơơ bbảảnn • Thực thể, tập • Thực thể: một đối tượng trong thế thực thể giới thực, tồn tại độc lập và phân biệt được với các đối tượng khác • Thuộc tính • Tập thực thể: một tập hợp các thực • Khoá thể có tính chất giống nhau • Liên kết, tập • Ví dụ: liên kết – Thực thể: một sinh viên, một lớp – Tập thực thể: toàn thể sinh viên của 1 lớp, toàn thể các lớp của 1 khoa 25 26 Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... Kiểu thuộc tính • Thuộc tính là đặc tính của một tập thực thể sinh_viên • Thuộc tính đơn giản (thuộc tính nguyên sinh_viên – Tập thực thể SinhViên có các thuộc tính như: TênSV, tố) NămSinh,… •sv1 • Mỗi thực thể trong tập •sv2 – có kiểu dữ liệu tenSV gioitinh thực thể có một giá trị •sv3 nguyên tố maSV đặc tính nằm trong miền • Thuộc tính phức namsinh diachi giá trị của thuộc tính – Sinh viên 1 có: Họtên là maSV – có kiểu phức, định Nguyễn Hải Anh, Năm sinh diachi nghĩa bởi các thuộc so_pho quan thanh_pho 1980 tenSV gioitinh tính khác namsinh 27 28 Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... Kiểu thuộc tính Khóa • Thuộc tính đa giá maMH • Một hay một tập thuộc tính mà giá trị của trị chúng có thể xác định duy nhất một thực – tương ứng với mỗi tenmon thể trong tập thực thể mon_hoc – Tập thực thể SinhViên có thể dùng MãSV làm thực thể, có thể soHT nhận nhiều giá trị khoá giao_vien • Khoá gồm nhiều thuộc tính thì gọi là khoá • Thuộc tính suy phức diễn sinh_viên • Một tập thực thể có thể có nhiều khoá – có thể tính toán nhưng chỉ một trong số các khoá được được từ (các) thuộc chọn làm khoá chính tính khác nam • Trong sơ đồ ER, thuộc tính nào được chọn tenSV tuoi maSV làm khoá chính sẽ được gạch chân ngaysinh 29 30 diachi goupee.com fb.com/goupee.vn fb.com/groups/goupee 5

Trang 15

Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... Liên kết - Tập liên kết Liên kết - Tập liên kết - Ví dụ: • Một liên kết là một mối liên hệ có nghĩa giữa nhiều thực thể maSV maMH – Cho một thực thể SinhViên1 và LớpA, liên kết ThànhViên chỉ ra rằng SinhViên1 là 1 thành tenSV tenmon viên của LớpA sinh_viên diem_thi mon_hoc ngaysinh • Tập liên kết là một tập hợp các liên kết soHT cùng kiểu nam – Giữa tập thực thể SinhViên và Lớp có 1 tập liên diachi ket_qua kết ThànhViên, chỉ ra rằng mỗi sinh viên đều là thành viên của 1 lớp nào đó • Một liên kết có thể có thuộc tính 31 32 Mô hMô hììnhnh ththựực thc thểể liên kliên kếết...t... CáCách lch lậập sp sơơ đồđồ ththựực thc thểể - liên k- liên kếếtt Ràng buộc của kết nối • 1-1: Liên kết 1 thực thể 1 1 • Bước 1: Xác định các thực thể lop_hoc chu_nhiem giao_vien của một tập thực thể với nhiều nhất 1 thực thể của • Bước 2: Xác định các liên kết giữa tập thực thể khác các thực thể • 1-n: Liên kết 1 thực thể 1 n của một tập thực thể với lop_hoc thanh_vien sinh_vien nhiều thực thể của tập thực – Bậc của liên kết thể khác – Ràng buộc (1-1, 1-n, n-n, đệ quy) • n-n: Liên kết 1 thực thể n n của một tập thực thể với sinh_viên dang_ky mon_hoc nhiều thực thể của tập thực thể khác và ngược lại • đệ quy: Liên kết giữa các mon_hoc thực thể cùng kiểu dieu_kien 33 34 BàBài ti tậập: Vp: Vẽẽ ssơơ đồđồ ERER Ho Dem Ten Ten _phong Ma_phong Dia_diem • Bài toán: phân tích và thiết kế 1 CSDL gồm các thông tin trong 1 công ty (nhân viên, phòng ban, SoBH HoTen Dia_chi Luong dự án) Ngay_sinh 1 Gioi_tinh PHONG_BAN – Công ty được tổ chức bởi các phòng ban. Mỗi phòng ban có 1 tên duy nhất, 1 số duy nhất và 1 người quản lý 1 (thời điểm bắt đầu công tác quản lý của người này cũng 1 n La_NV 1 nguoiPT NHAN_VIEN được lưu lại trong CSDL). Mỗi phòng ban có thể có nhiều trụ sở làm việc khác nhau n 1 Phu_trach Quan_ly – Mỗi phòng điều phối một số dự án. Mỗi dự án có 1 tên 1 và 1 mã số duy nhất, thực hiện tại một địa điểm duy nguoibiPT n nhất Ngay_BD – Các thông tin về nhân viên cần được quan tâm gồm: So_gio tên, số bảo hiểm, địa chỉ, lương, giới tính, ngày sinh. Mỗi Dieu_phoi nhân viên làm việc tại một phòng ban nhưng có thể co tham gia nhiều dự án khác nhau. Những dự án này có Lam_viec n thể được điều phối bởi các phòng ban khác nhau. Thông n m tin về số giờ làm việc trong từng dự án (theo tuần) cũng DU_AN như người quản lý trực tiếp của các nhân viên cũng được CON lưu trữ – Thông tin về con cái của từng nhân viên: tên, giới tính, ngày sinh 35 Ten_DA Ma_DA Dia_diem36 HoTen Gioi_tinh Ngay_sinh goupee.com fb.com/goupee.vn fb.com/groups/goupee 6

Trang 16

BiBiếếnn đổđổi si sơơ đồđồ ththựực thc thểể liên kliên kếếtt BiBiếếnn đổđổi cái các tc tậập thp thựực thc thểể sang ssang sơơ đồđồ quan hquan hệệ • Bước 1: 1 tập thực thể Æ 1 quan hệ • Biến đổi tập các thực thể – thuộc tính thuộc tính (trường) • Biến đổi các liên kết – 1 thực thể 1 bộ • Các khoá của các sơ đồ quan hệ – khoá của tập thực thể khoá của quanhệ sinh_viên • Các sơ đồ quan hệ với khoá chung maSV tenSV ngaysinh nam diachi malop SINH_VIEN •sv1 maSV •sv1tenSV ngaysin gt diachi lop •sv2 SV001 Trần T. Bình h1/4/81 0 21 T. Q. B IT4 •sv2 •sv3 SV002 Ng. Trung 3/2/80 1 56 Đ. C. V IT5 SV006 •sv3Trần M. Quế 26/3/82 0 45 H. B. T IT6 37 •sv4 38 SV003 Ng. Hương 29/2/80 0 86 L. T. N IT7 BiBiếếnn đổđổi cái các tc tậập thp thựực thc thểể BiBiếếnn đổđổi cái các liên kc liên kếếtt • Bước 2: 1 tập thực thể xác định từ • Bước 3: Liên kết 1-1 tập thực thể khác (E) qua 1 liên kết ¾Thêm 1 quan hệ mới xác định bởi các thuộc tính nằm trong khoá của các thực Æ 1quan hệ chứa khoá cuả E: thể có liên quan LOPTRUONG(maSV) CHU_NHIEM_LOP(malop,maGV) hoặc ¾Dùng khoá ngoài LOP_HOC(malop,lop,khoa,maGV) sinh_viên la_mot lop_truong maGV malop 1 1 ngaysinh lop lop_hoc chu_nhiem giao_vien trinhdo khoa khoa 39 40 BiBiếếnn đổđổi cái các liên kc liên kếết (tit (tiếếp)p) BiBiếếnn đổđổi cái các liên kc liên kếết (tit (tiếếp)p) • Bước 4: Liên kết 1-n • Bước 5: Liên kết n-n ¾ Thêm 1 quan hệ mới xác định bởi các thuộc tính nằm ¾Thêm 1 quan hệ mới xác định bởi các trong khoá của các thực thể có liên quan SINHVIEN_LOP(malop, maSV) thuộc tính nằm trong khoá của các hoặc thực thể có liên quan và các thuộc ¾ Dùng khoá ngoài: thêm khoá chính của quan hệ bên tính của liên kết 1 vào quan hệ bên n làm khoá ngoài SINH_VIEN(maSV, tenSV, ngaysinh, nam, diachi, malop) maSV DANG_KY(maSV,maMH, diem) tenSV diem maMH maSV 1 ngaysinh n malop n tenSV m sinh_viên dang_ky mon_hoc ten lop lop_hoc gom sinh_vien nam ngaysinh khoa diachi nam soHT 41 42 diachi goupee.com fb.com/goupee.vn fb.com/groups/goupee 7

Trang 17

ThuThuộộc tíc tínhnh đđa tra trịị Mô hìMô hình dnh dữữ liliệệu hu hướướngng đốđối ti tượượngng (Object-(Object-oriented data model)oriented data model) • Bước 6: Với mỗi thuộc tính đa trị • Sự ra đời ¾Thêm 1 quan hệ mới xác định bởi – Khoảng đầu những năm 90 thuộc tính đa trị và khoá của tập • Biễu diễn: sơ đồ lớp thực thể tương ứng • Các khái niệm cơ bản – Đối tượng: một đối tượng trong thế giới thực, được xác MH_GV(maMH,giao_vien) định bởi một định danh duy nhất – Thuộc tính: biểu diễn một đặc tính của đối tượng, maMH – Phương thức : thao tác được thực hiện trên đối tượng. • Tất cả các truy nhập vào thuộc tính của đối tượng đều phải được tenmon thực hiện thông qua các phương thức này. mon_hoc – Lớp: một cách thức để khai báo một tập các đối tượng có soHT chung một tập thuộc tính và phương thức giao_vien 43 44 Mô hìMô hình dnh dữữ liliệệu hu hướướngng đốđối ti tượượngng Mô hìMô hình dnh dữữ liliệệu hu hướướngng đốđối ti tượượngng VíVí ddụụ:: NhNhậận xén xét:t: class sinh_vien { • Ưu điểm string maSV; string tenSV; – Cho phép định nghĩa kiểu đối tượng phức tạp date ngaysinh; – Tính chất: bao đóng (encapsulation), kế thừa boolean nam; (heritage), đa hình (polymorphism) string diachi; string lop; • Nhược điểm – Cấu trúc lưu trữ phức tạp và có thể sử dụng string ten(); nhiều con trỏ string ngay_sinh(); string dia_chi(); – Khả năng tối ưu hoá các xử lý bị hạn chế trong string lop(); nhiều trường hợp void gan_DC(string DC_moi); void gan_lop(string lop); } 45 46 So sáSo sánh vnh vàà đđánh giánh giáá Phân loPhân loạại cái các mô hc mô hììnhnh Nhắc lại: Mô hình dữ liệu là một tập hợp các khái niệm dùng để mô tả cấu trúc của một CSDL Phân cấp Thế hệ 1 Mô hình Mô hình Mô hình Mô hình Mô hình Các mô hình mạng phân cấp quan hệ TT-LK HĐT Mạng dựa trên biểu diễn hạn chế hạn chế tương đối đa dạng đa dạng bản ghi ngữ nghĩa đa dạng Quan hệ DL dễ dàng và Thế hệ 2 lưu trữ DL s/d nhiều dữ liệu khó lưu cấu trúc Thực thể-liên kết con trỏ lặp lại hiệu quả trữ phức tạp Các mô hình đơn giản đơn giản đa dạng đa dạng dựa trên khả năng truy vấn ngữ nghĩa đối tượng hiệu quả ít khả ít khả tối ưu không được không Thế hệ 3 của truy năng tối năng tối hoá tốt xem xét h/q khi (không hiệu s/d nhiều Đối tượng - Quan hệ Hướngđối tượng vấn ưu ưu quả) con trỏ 47 48 goupee.com fb.com/goupee.vn fb.com/groups/goupee 8

Trang 18

CáCác bc bướước xây dc xây dựựng mng mộột ht hệệ CSDLCSDL BàBài ti tậậpp • Cho sơ đồ thực thể liên kết bên dưới, hãy biến đổi 1: PHÂN TÍCH sang mô hình quan hệ: StudentName StudentID LecturerID LecturerName StudentBirth Students Lecturers Mô tả ứng dụng Mô hình hoá DL (vd: Sơ đồ thực thể-liên kết) LecturerPhone 2: THIẾT KẾ StudentAddress Belong to 3: CÀI ĐẶT ClassID Classes Learn Time ClassName Subjects ClassMonitor SubjectID Cài đặt với 1 hệ quản trị CSDL Mô tả DL logic với 1 mô hình DL cụ thể SubjectName (vd: ORACLE) (vd: Sơ đồ quan hệ) 49 50 LLờời gii giảảii LLờời gii giảải (tii (tiếếp)p) • Biến đổi các tập thực thể và các quan hệ • Cải tiến thiết kế: Bảng Students và thành các bảng: bảng Belongto có cùng khóa Lecturers(LecturerID, LecturerName, (StudentID), ta nên kết hợp chúng LecturerPhone) lại: Students(StudentID, StudentName, StudentBirth, StudentAddress) Students’(StudentID, StudentName, Classes(ClassID, ClassName, ClassMonitor) StudentBirth, StudentAddress, ClassID) Subjects(SubjectID, SubjectName) Belongto(StudentID, ClassID) Learn(LecturerID,ClassID, SubjectID, Time) 51 52 LLờời hay ýi hay ý đẹđẹpp Trong 10 lần thành công thì có tới 9 lần thành công nhờ sự hăng hái và niềm tin trong công việc Teewilson 53 goupee.com fb.com/goupee.vn fb.com/groups/goupee 9

Trang 19

NNộội dungi dung Ngôn ngNgôn ngữữ đđịịnh nghnh nghĩĩaa vàvà thao tthao táác dc dữữ liliệệuu đđốốii • Các cách tiếp cận đối với thiết kế ngôn ngữ của CSDL quan hệ vvớới mô hìi mô hình quan hnh quan hệệ – Giới thiệu một số ngôn ngữ và phân loại ¾So sánh và đánh giá NguyNguyễễn Hn Hồồng Phng Phươươngng • Một số ngôn ngữ dữ liệu mức cao phuongnh-phuongnh-fit@mail.hut.edu.vnfit@mail.hut.edu.vn – QBE (Query By Example) – SQL (Structured Query LLanguage) BBộộ môn Hmôn Hệệ ththốống thôngng thông tintin • Kết luận ViViệện Côngn Công nghnghệệ thông tin vthông tin vàà TruyTruyềền thôngn thông ĐĐạại hi họọc Bc Bááchch KhoaKhoa HHàà NNộộii 1 2 CSDL víCSDL ví ddụụ 11 CSDL víCSDL ví ddụụ 22 Supplier SID SNAME SIZE CITY Student Takes Enrol S1 Dustin 100 London SupplyProduct Id Name Suburb SID SNO SID Course S2 Rusty 70 Paris SID PID QUANTITY 1108 Robert Kew 1108 21 3936 101 S3 Lubber 120 London S1 P1 500 3936 Glen Bundoora 1108 23 1108 113 S4 M&M 60 NewYork S1 P2 400 8507 Norman Bundoora 8507 23 8507 101 S5 MBI 1000 NewOrlean S1 P4 100 S6 Panda 150 London 8452 Mary Balwyn 8507 29 S2 P3 250 S2 P4 50 Course Subject Product S3 P1 300 No Name Dept No Name Dept PID PNAME COLOR S3 P2 350 P1 Screw red S3 P6 200 113 BCS CSCE 21 Systems CSCE P2 Screw green S4 P1 10 101 MCS CSCE 23 Database CSCE P3 Nut red S5 P2 200 29 VB CSCE P4 Bolt blue 18 Algebra Maths P5 Plier green 3 4 P6 Scissors blue ĐĐặặt vt vấấnn đđềề: cá: các câu hc câu hỏỏii Câu hCâu hỏỏi (tii (tiếếp)p) Student • Tìm các sinh viên Id Name Suburb • Tìm tên của các sinh Student 1108 Robert Kew viên nào sống ở đăng ký khoá học 3936 Glen Bundoora Id Name Suburb có mã số 113 Bundoora 1108 Robert Kew 8507 Norman Bundoora – Tìm các bộ của bảng – Tìm các giá trị SID Enrol 8452 Mary Balwyn 3936 Glen Bundoora Student có Suburb = 8507 Norman Bundoora trong bảng Enrol có SID Course Bundoora 8452 Mary Balwyn Course tương ứng 3936 101 – Đưa ra các giá trị của là 113 1108 113 thuộc tính Name của – Đưa các bộ của 8507 101 các bộ này bảng Student có Course SID trong các giá No Name Dept trị tìm thấy ở trên 113 BCS CSCE 5 101 MCS CSCE 6 goupee.com fb.com/goupee.vn fb.com/groups/goupee 1

Trang 20

Phân loPhân loạại cái các ngôn ngc ngôn ngữữ truy vtruy vấấnn • Ngôn ngữ đại số – 1 câu hỏi = 1 tập các phép toán trên các quan hệ – Được biểu diễn bởi một biểu thức đại số (quan Ngôn ngNgôn ngữữ đđạại si sốố quan hquan hệệ hệ) • Ngôn ngữ tính toán vị từ – 1 câu hỏi = 1 mô tả của các bộ mong muốn – Được đặc tả bởi một vị từ mà các bộ phải thoả mãn – Phân biệt 2 lớp: • ngôn ngữ tính toán vị từ biến bộ • ngôn ngữ tính toán vị từ biến miền 7 8 TTổổng quanng quan Phân loPhân loạại cái các phc phéép top toáánn đđạại si sốố quan hquan hệệ • Gồm các phép toán tương ứng với các • Phép toán quan hệ thao tác trên các quan hệ – Phép chiếu (projection) • Mỗi phép toán – Phép chọn (selection) – Đầu vào: một hay nhiều quan hệ – Phép kết nối (join) – Đầu ra: một quan hệ – Phép chia (division) • Biểu thức đại số quan hệ = chuỗi các phép • Phép toán tập hợp toán – Phép hợp (union) • Kết quả thực hiện một biểu thức đại số là – Phép giao (intersection) một quan hệ – Phép trừ (difference) • Được cài đặt trong phần lớn các hệ CSDL – Phép tích đề-các (cartesian product) hiện nay 9 10 PhéPhép top toáán tn tậập hp hợợpp PhéPhép hp hợợpp • Đ/n: gồm các bộ thuộc ít nhất 1 trong 2 • Định nghĩa: Quan hệ khả hợp quan hệ đầu vào – 2 quan hệ r và s được gọi là khả hợp • 2 quan hệ đầu vào phải là khả hợp nếu chúng được xác định trên cùng 1 • Cú pháp: R = R R miền giá trị 1 2 R1R1 R1R1 R2R2 R2R2 – r xác định trên D1x D2 x…x Dn Subject1 Subject2 Kết quả – s xác định trên D’1x D’2 x…x D’m Name Course –Æ D = D’ và n=m Name Course Systems BCS i i Systems BCS Name Course Database BCS Database BCS DataMining MCS Database MCS Database MCS Writing BCS Algebra MCS Algebra MCS DataMining MCS 11 Writing BCS12 goupee.com fb.com/goupee.vn fb.com/groups/goupee 2

Hiển thị 20 trang đầu. Tải tài liệu để xem đầy đủ.

Bình luận (0)

Đăng nhập để tham gia bình luận

Chưa có bình luận nào. Hãy là người đầu tiên!