CƠ SSỞ DỮ LIỆU - sinhvienit.net · Chương 3: Ngôn ngữSQL Ch ... Lập trình ứng...
Transcript of CƠ SSỞ DỮ LIỆU - sinhvienit.net · Chương 3: Ngôn ngữSQL Ch ... Lập trình ứng...
CCƠƠ SỞ DỮ LIỆUSỞ DỮ LIỆUỆỆGV: ThS. Lê Thị Ngọc Thảo
11www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu
Đề cương môn học
Chương 1: Giới thiệu
Chương 2: Mô hình dữ liệu quan hệ
Chương 4: Ràng buộc toàn vẹn
Chương 3: Ngôn ngữ SQL
Chương 5: Phụ thuộc hàm
Chương 4: Ràng buộc toàn vẹn
Chương 6: Chuẩn hóa CSDL
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu22
Chương 7: Tối ưu hóa câu truy vấn
Phương thức tiến hành
Lý thuyết: 30 tiếtBài tậ 15 tiếtBài tập: 15 tiếtThực hành: 30Tự học: 150 tiếtMôn học được phân bổ : 15 tuần
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu33
Tài liệu tham khảo
Tóm tắt bài giảng (slide)Các giáo trình:
[2] Giáo trình cơ sở dữ liệu – ĐH Tôn Đức Thắng
ở ễ ế[3] Giáo trình nhập môn cơ sở dữ liệu – Nguyễn An Tế
[4] CSDL – Lý thuyết & Thực hành – Nguyễn Bá Tường
[5] Lập trình ứng dụng chuyên nghiệp SQL server 2000[5] Lập trình ứng dụng chuyên nghiệp SQL server 2000 – Phạm Hữu Khang
[6] Modern Database Management – Jeffrey A.Hoffer –[ ] g y2002
Internet
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu44
Phương thức đánh giá
Điểm kiểm tra 10%T bì h ộ Điể thả l ậ hóTrung bình cộng Điểm thảo luận nhóm
Điểm cộng của mỗi lần làm bài tập
ểĐiểm thi giữa học kỳ 20%Kiểm tra trên máy - Đề mở
Thời lượng: 30 - 45 phút
Kết quả thi cuối học kỳ 70%Kiểm tra trên giấy - Đề mở
Thời lượng: 90 - 120 phút
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu55
Chương 1: Giới thiệu
Tại sao cần có 1 CSDLTại sao cần có 1 CSDLĐịnh nghĩa CSDLCác đối tượng sử dụng CSDLợ g ụ gHệ Quản trị CSDL – DBMSCác mức biểu diễn 1 CSDLSơ đồ tổng quát 1 Hệ QTCSDLTính độc lập giữa dữ liệu & chương trìnhCác mô hình dữ liệu
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu66
Dữ liệu và Thông tin
Dữ liệu là một mô tả hình thức về nhữngsự kiện khái niệm hình thức (tuổi chuỗisự kiện, khái niệm, hình thức (tuổi, chuỗingày tháng, tên người , …)
Thông tin là kết quả của quá trình xử lý dữThông tin là kết quả của quá trình xử lý dữliệu để rút ra “con số có nghĩa “
Dữ liệu là nền tảng để tạo ra thôngDữ liệu là nền tảng để tạo ra thôngtin, và từ đó là cơ sở để có được tri thức
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu77
Tại sao cần có 1 CSDL
Hướng tiếp cận hệ tập tin:Cá h t ề thốCách truyền thống
Được xử lý bằng các ngôn ngữ như: COBOL FORTRAN PASCALCOBOL, FORTRAN, PASCAL
Mỗi ứng dụng sẽ có một tập hợp các tập tin riêng chứa dữ liệu riêngriêng chứa dữ liệu riêng
Ví dụ:
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu88
Tại sao cần có 1 CSDL
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu99
Tại sao cần có 1 CSDL
Hạn chế của cách tiếp cận cũ:Có liê kết hặt hẽ iữ ấ t ú l ậCó sự liên kết chặt chẽ giữa cấu trúc luậnlý và cấu trúc vật lý của các tập tin vàchương trình ứng dụngchương trình ứng dụng
Trùng lắp dữ liệu
Dữ liệu thiếu nhất quánDữ liệu thiếu nhất quán
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1010
CSDL là gì?
Là một bộ sưu tập rất lớn về các loại dữ liệu tá hiệtác nghiệp
Bao gồm nhiều loại dữ liệu (âm thanh, tiếng ói hữ iết ă bả đồ h hì h ả h tĩ hnói, chữ viết, văn bản, đồ hoạ, hình ảnh tĩnh
hay hình ảnh động.... )
Dữ liệu được mã hoá dưới dạng các chuỗiDữ liệu được mã hoá dưới dạng các chuỗi bit và được lưu trữ dưới dạng File dữ liệu.
Cấu trúc lưu trữ dữ liệu tuân theo các quyCấu trúc lưu trữ dữ liệu tuân theo các quy tắc dựa trên lý thuyết toán học.
Cơ sở dữ liệu phản ánh trung thực thế giớiCơ sở dữ liệu phản ánh trung thực thế giới dữ liệu hiện thực khách quan.
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1111
Database
Database (DB): là cấu trúc hợp nhất, có thể chia sẽ lưu trữ trong máy tính có thể chia sẽ, lưu trữ trong máy tính _ chứa một tập hợp dữ liệu bao gồm
• End_user data , là những data mà người dùng_ , g g gquan tâm
• Metadata , là data về data
Metadata chứa mô tả về các đặc tínhcủa dữ liệu và các mối liên kết của nócủa dữ liệu , và các mối liên kết của nótrong Database
Là dữ liệu bổ sung về dữ liệuệ g ệ
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1212
Các đối tượng sử dụng
Những người sử dụng CSDL không chuyên chuyên Các chuyên viên tin học biết khaithác CSDL thác CSDL Những người quản trị CSDL
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1313
Hệ quản trị CSDL
DataBase Management System -DBMSDBMS
Là phần mềm điều khiển các chiến lược truy nhập CSDLtruy nhập CSDL.
Khi người sử dụng đưa ra yêu cầu truy nhập bằng một ngôn ngữ dữ liệu nào đónhập bằng một ngôn ngữ dữ liệu nào đó, HQTCSDL tiếp nhận và thực hiện các thao tác trên CSDL lưu trữ.
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1414
Hệ quản trị CSDL bao gồm
Ngôn ngữ giao tiếp giữa User và CSDLểTừ điển dữ liệu (Data Dictionary)
Có biện pháp bảo mật tốtCơ chế giải quyết tranh chấp dữ liệu.Có cơ chế sao lưu (Backup) và phục hồi (Restore) dữ liệu khi có sự cố xảy ra. Cung cấp một giao diện (Interface) tốtBảo đảm tính độc lập giữa dữ liệu và chương trình
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1515
Ngôn ngữ giao tiếp giữaUser và CSDL
Ngôn ngữ mô tả dữ liệu (Data Definition Language DDL) Definition Language - DDL) Ngôn ngữ thao tác dữ liệu (Data Manipulation Language - DML) Manipulation Language - DML) Ngôn ngữ truy vấn dữ liệu, hay ngôn ngữ hỏi đáp có cấu trúc (Structured ngữ hỏi đáp có cấu trúc (Structured Query Language - SQL) Ngôn ngữ quản lý dữ liệu (Data Ngôn ngữ quản lý dữ liệu (Data Control Language - DCL)
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1616
Các mức biểu diễn CSDL
Mức trong (vật lý): Mứ l t ữ CSDL dữ liệ ì l t ữ hMức lưu trữ CSDL: dữ liệu gì, lưu trữ như thế nào? ở đâu? Cần các chỉ mục gì? Việc truy xuất như thế nào?truy xuất như thế nào?
Mức quan niệm (logic): CSDL cần lưu những loại dữ liệu nào?CSDL cần lưu những loại dữ liệu nào?
Mối quan hệ giữa chúng?
Mứ ài Mức ngoài. Mức của người sử dụng và các chương trình ứng dụngtrình ứng dụng.
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1717
Các mức biểu diễn CSDL
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1818
Các mô hình dữ liệu
Mô hình dữ liệu mạngMô hì h dữ liệ hâ ấMô hình dữ liệu phân cấpMô hình dữ liệu quan hệ
ểMô hình dữ liệu thực thể - kết hợpMô hình dữ liệu hướng đối tượng.
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu1919
Các mô hình dữ liệu
Mô hình dữ liệu mạngBiể diễ bằ 1 đồ thị ó h ớBiểu diễn bằng 1 đồ thị có hướng
Gồm các mẫu tin (Record), loại mẫu tin (R d T ) à l i liê hệ (S t T )(Record Type) và loại liên hệ (Set Type)
Đặc điểm:Đ iả dễ ử dĐơn giản, dễ sử dụng
Không thích hợp trong việc biểu diễn cácCSDL ó ô lớCSDL có quy mô lớn
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2020
VD–Mô hình dữ liệu mạng
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2121
Các mô hình dữ liệu
Mô hình dữ liệu phân cấpMô hì h là 1 â t đó ỗi út ủ âMô hình là 1 cây, trong đó mỗi nút của cây biểu diễn 1 thực thể, giữa nút con và nút cha được liên hệ với nhau theo 1 mối quancha được liên hệ với nhau theo 1 mối quan hệ xác định
Gồm các loại mẫu tin (giống mô hìnhGồm các loại mẫu tin (giống mô hìnhmạng) và loại mối liên hệ (kiểu phân cấp)
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2222
VD–Mô hình dữ liệu phân cấp
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2323
Mô hình dữ liệu quan hệ
Do E.F.Codd đề xuất năm 1970Có ơ ở lý th ết ữ hắ khái Có cơ sở lý thuyết vững chắc: khái niệm lý thuyết tập hợp trên các quan hệquan hệ.Các khái niệm: thuộc tính (Attribute) quan hệ (Relation) lược (Attribute), quan hệ (Relation), lược đồ quan hệ (Relation Schema), bộ (Tuple), khóa (Key).( p ), ( y)
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2424
Mô hình dữ liệu thực thể-kết hợp
Do P.P.Chen đề xuất năm 1976Cá khái iệ Các khái niệm:
Thực thể (Entity)
ểLoại thực thể (Entity Type)
Thuộc tính (Entity Attribute)
Khóa (Entity Key)
Mối kết hợp (Entity Relationship)
Số ngôi của mối kết hợp (Degree)
Thuộc tính của mối kết hợp (Attribute)
Bản số (RelationShip Cardinal)www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2525
Ví dụ
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2626
Mô hình dữ liệu hướng đối tượng
Ra đời cuối những năm 1980Dự t ê á h tiế ậ hướ đối Dựa trên cách tiếp cận hướng đối tượngSử d á khái iệ lớ (Cl ) Sử dụng các khái niệm: lớp (Class), sự kế thừa (inheritance), …Không được sử dụng rộng rãi Không được sử dụng rộng rãi
www.tdt.edu.vn www.tdt.edu.vn Cơ Sở Dữ LiệuCơ Sở Dữ Liệu2727