Csdl Va Pmud
CSDL Định nghĩa: Dữ liệu: phản ánh một sự vật hiện tượng trongthế giới khách quan được lưu trữ trong máytính dưới dạng có cấu trúc (bản ghi) hoặckhông có cấu trúc (hình ảnh, âm thanh) CSDL: tập hợp dữ liệu tương quan có tổ chức được lưu trữ trên các phương tiện lưu trữ như đĩa từ, băng từ v..v nhằm thỏa mã các yêu cầu khai thác thông tin (đồng thời) của nhiều người sử dụng và của nhiều chương trình ứng dụng.Đặc tính của CSDL Chia sẻ - tức CSDL cho phép nhiềungười dùng, nhiều ứng dụng. Bền vững - tức dữ liệu được đặttrên thiết bị lưu trữ ổn định, chophép sử dụng lại nhiều lầnCSDL trong các ứng dụng Thông dụng Csdl trong các ứng dụng quản lý nguồn nhân lực, dịch vụ công cộng (điện, nước...) Thương mại điện tử Csdl khách hàng, sản phẩm hàng hoá... của các cửa hàng trực tuyến (B2C) sàn giao dịch trực tuyến(B2B) Chuyên biệt Csdl lưu trữ dữ liệu của các ứng dụng chuyên biệt như hệ thống thông tin địa lý (GIS_ Geographic Information System)CSDL lưu trữ dưới dạng bảng (hay quan hệ) là hình thức lưu trữ nhiều nhất và được ứng dụng rộng rãi nhất hiện nay.Csdl thông tin địa lýlưu trữ Dữ liệu bản đồ (hìnhảnh bản đồ) Dữ liệu thuộc tính(mô tả đặc tính, đặcđiểm và các hiệntượng xảy ra tại mộtvị trí địa lý cụ thể)Mỗi lớp trong dữ liệubản đồ lưu trữ mộtbản đồ liên quan đến1 chức năng cụ thểTiêu chuẩn của CSDL Giảm việc dư thừa: Mỗi một ứng dụngkhông cần phải có các tập tin dữ liệucủa riêng nó Tránh được sự không nhất quán dữ liệu Dữ liệu được chia sẻ Áp dụng các chuẩn nghiêm ngặt Áp dụng các biện pháp an toàn bảomật Các ràng buộc phải được duy trìNgười sử dụng CSDL Người dùng cuối: Khai thác CSDL thôngqua các ứng dụng hoặc dựa trên phầnmềm quản trị CSDL. Người lập trình ứng dụng: Là người viếtcác chương trình ứng dụng cho phépngười sử dụng cuối sử dụng CSDL. Người quản trị CSDL (Database Administrator): Là người thu thập dữ liệu, thiết kế và bảo trì CSDL, thiết lập các cơchế đảm bảo an toàn cho CSDL (sao lưu, phục hồi dữ liệu)1.3. Hệ quản trị CSDL Khái niệm Hệ quản trị CSDL là một phần mềm chophép tạo lập CSDL và điều khiển mọitruy nhập đối với CSDL đó. Đặc điểm Quản lý dữ liệu lâu dài Hỗ trợ truy nhập dữ liệu lớn một cáchhiệu quảChức năng của hệ QT CSDL Hỗ trợ ít nhất một cách tổ chức dữ liệu(mô hình dữ liệu) Lưu trữ, truy xuất và cập nhật dữ liệu Quản lý giao dịch (transaction management) Điều khiển tương tranh (concurrency control) Chép lưu và phục hồi dữ liệu. Bảo mật dữ liệu Duy trì tính toàn vẹn/nhất quán dữ liệu. Cung cấp các tiện ích Hỗ trợ truyền thông dữ liệuPhân loại hệ quản trị CSDLDựa trên cách thức tổ chức dữ liệu Hệ QTCSDL phân cấp (IMS của IBM) Hệ QTCSDL mạng (IDMS của Cullinet Software) Hệ QTCSDL quan hệ Cho máy tính cá nhân:Microsoft Access Cho máy chủ: Microsoft SQL Server, MySQL, Oracle Hệ QTCSDL đối tượng (Ozone)1.4. Hệ CSDL Khái niệm Hệ CSDL là hệ thống gồm 4 thành phần Người sử dụng Hệ QTCSDL CSDL Phần cứng: Máy tính, ổ đĩa, băng từ dùngđể lưu trữ dữ liệu2.1. Các mức trừu tượng Mức khung nhìn: Mô tả chỉ một phần của toàn bộ CSDL. Hệthống có thể cung cấp nhiều khung nhìn đốivới cùng một CSDL. Mức khái niệm (logic): Mô tả những dữ liệu nào được lưu trữ trongCSDL và các mối quan hệ nào tồn tại giữa cácdữ liệu này. Mức vật lý: Mô tả dữ liệu được lưu trữ như thế nào. Tạimức vật lý, các cấu trúc dữ liệu mức thấp phứctạp được mô tả chi tiết. Một thiết kế tổng thể của CSDL được gọi là lược đồ CSDL Lược đồ khái niệm là bộ khung củaCSDL mức khái niệm. Lược đồ vật lý là bộ khung của CSDL mức vật lý. Lược đồ khung nhìn được gọi là lược đồcon.2.2. Lược đồ CSDL2.3.Tính độc lập dữ liệu Khái niệm Khả năng thay đổi một định nghĩa lược đồ trong một mứcmà không ảnh hưởng đến định nghĩa lược đồ mức cao hơntiếp theo được gọi là tính độc lập dữ liệu. Phân loại Độc lập dữ liệu mức vật lý là khả năng thay đổi lược đồmức vật lý mà không dẫn đến các chương trình ứng dụngphải viết lại. Các thay đổi tại mức vật lý đôi khi là cầnthiết để tăng hiệu năng hệ thống. Độc lập dữ liệu ở mức logic là khả năng thay đổi lược đồmức logic mà không dẫn đến các chương trình ứng phảiviết lại. Các thay đổi tại mức logic là cần thiết bất kể khinào cấu trúc logic của CSDL bị sửa đổi. Độc lập dữ liệu mức logic là khó đạt được hơn so với độc lập dữ liệu mức vật lý do các chương trình ứng dụng phụ thuộc nhiều vào cấu trúc logic của dữ liệu màhọ đang truy cập.3. Mô hình dữ liệu Khái niệm Mô hình dữ liệu là một mô tả của việc tổ chức dữliệu trong CSDL: dữ liệu, ràng buộc được định nghĩacho dữ liệu cùng quan hệ giữa các dữ liệu. Ph Mô hình dữ liệu ân loại dựa trên đối tượng Ví dụ: Mô hình thực thể liên kết ER(Entity-Relationship model) Mô hình dữ liệu dựa trên bản ghi Ví dụ: Mô hình dữ liệu phân cấp, mô hình dữliệu mạng, mô hình dữ liệu quan hệ.3.1. Mô hình thực thể liên kết Mô hình thực thể liên kết dựa trên cơ sở sự nhận thức của thế giới thực bao gồm một tập các đối tượng cơ sở được gọi là các thực thể và một tập các liên kết giữa các đối tượng này. Mô hình thực thể liên kết là cách tiếp cậnchính để mô hình hóa dữ liệu theo kháiniệm (conceptual data modeling). Mô hình ER là công cụ giao tiếp giữangười sử dụng cuối cùng và người thiết kếCSDL để xây dựng CSDL trong giai đoạnphân tích. Mô hình ER được dùng để xây dựng môhình dữ liệu theo khái niệm (conceptual data model) nhằm biểu diễn cấu trúc vàcác ràng buộc của CSDL.8Bài giảng - CSDL và Phần mềm ứng dụng 313.1.1. Thực thể và liên kết Một thực thể là một đối tượng có thể đượcđịnh nghĩa và dữ liệu về nó có thể đượclưu trữ. Đặc tính của thực thể gọi là thuộc tính củathực thể. Một liên kết là sự kết hợp giữa một sốthực thể. Liên kết 1- 1 Liên kết 1- nhiều Liên kết nhiều- nhiều Liên kết là-mộtBiểu diễn tập thực thể ở mức sơ đồ Nhóm bao gồm tập thực thể giốngnhau (ít nhất cần có một tập cácthuộc tính chung) được gọi là mộttập thực thể (kiểu thực thể) Biểu diễnCác dạng thuộc tính Thuộc tính định danh/khóa :Xác định thực thểmột cách duy nhất Mô tả được gạch chân để phân biệt với các thuộctính khác Giá trị khác rỗng và thành phần không chứa cácthông tin thay đổi Khóa đơn, khóa phức, khóa dự tuyển, khóa chính Thuộc tính mô tả: Cung cấp thông tin làm rõthêm về thực thể Chỉ nên xuất hiện trong một kiểu thực thể tránh dưthừa dữ liệu Thuộc tính phức hợp: Hợp thành của một số thành phần thông tin-thuộc tính của thực thể. Phân rã thành thuộc tính đơn (khôngthể bị phân rã) tùy thuộc nhu cầu xửlý. Thuộc tính đa trị: Nhận nhiều hơnmột giá trịBiểu diễn tập liên kết mức sơ đồ Nhóm bao gồm các liên kết cùng kiểuđược gọi là một tập liên kết (kiểu mốliên kết/mối liên kết)Các kiểu mối liên kết giữa hai tập thựcthể (E1, E2) một - một (one-to-one): một thực thể a trong E1 liên kết với một thực thể b trongE2 và ngược lại nhiều - nhiều (many-to-many): một thựcthể a trong E1 liên kết với nhiều thực thểb trong E2 và ngược lại. một - nhiều (one-to-many): một thực thểa trong E1 liên kết với nhiều thực thể b trong E2; một thực thể b trong E2 liên kếtvới một thực thể a trong E1. là một: Tập thực thể E2 là sự tổng quát hóa của tập thực thể E1, hay E1 là một kiểu đặc biệt của E2Thuộc tính của mối liên kết Mối liên kết có thể có nhiều thuộc tínhdùng để mô tả các đặc tính của sự liênkết giữa các thực thể3.1.2. Sơ đồ thực thể liên kết Sơ đồ tóm tắt thông tin cần lưu trữtrong một csdl được mô tả bằng môhình thực thể liên kết được gọi là sơđồ thực thể liên kết hay sơ đồ ER. Sơ đồ ER của một cơ sở dữ liệuthuộc một ứng dụng được xây dựngtrên các đặc tả của dữ liệu cho ứngdụng đó.Các bước xây dựng sơ đồ ER B1: Xác định các kiểu thực thể liênkết chính B2: Xác định các thuộc tính cho cáckiểu thực thể này B3: Xác định các thuộc tính khóa vàthuộc tính kết nối B4: Xác định các mối liên kết B5: Xây dựng lược đồ3.2. Mô hình quan hệ (Relation Model) Biểu diễn mọi dữ liệu dưới dạng cácbảng, bảng được định dạng gồm cáchàng và cột. Mô tả việc tổ chức dữ liệu trong hệquản trị cơ sở dữ liệu.3.2.1. Các khái niệm trong mô hìnhquan hệ Quan hệ Thuộc tính Bộ giá trị Khóa Lược đồ quan hệ Thể hiện của quan hệQuan hệ (Relation) Một quan hệ là mộtbảng Mỗi hàng (bản ghi) biểu diễn một bộ giátrị của quan hệ. Sốcác bộ được gọi là lựclượng của quan hệ. Mối cột (trường) biểudiễn một thuộc tính/ thành phần của cácbộ. Số các thànhphần được gọi là bậccủa quan hệ.Thuộc tính (Property) Ý nghĩa: Thuộc tính là một tính chất riêng biệtcủa một đối tượng cần được lưu trữtrong CSDL để phục vụ cho việc khaithác dữ liệu về đối tượng. Ví dụ: Các thuộc tính cho đối tượng nhà cungcấp hàng hóa là TenNCC, ĐiaChi, ... Thuộc tính được đặc trưng bởi: Tên gọi, kiểu dữ liệu, miền giá trị Tên gọi: Thuộc tính được đặt tên một cách gợinhớ nhưng không quá dài hoặc quá ngắn. VD: SNAME, TEN_NCC, TenNCC, TênNCC Kiểu: Mỗi thuộc tính đều phải thuộc một kiểukiểu dữ liệu nhất định. Ví dụ: TenNCC kiểu xâu kítự Char, NgaySinh kiểu ngày tháng Date. Miền giá trị (MGT): Là tập tất cả các giá trịmà thuộc tính có thể có. Ví dụ: SanPham có cácgiá trị thuộc tập {Bánh mỳ, Bánh ngọt, Kẹo}. Giá trịđặc biệt: giá trị rống/NULL.Bộ giá trị (Tupe) Ý nghĩa Một bộ là các thông tin của một đốitượng thuộc quan hệ. Đặc điểm Hai bộ bất kỳ trong quan hệ là khác nhau ở ít nhất giá trị của một thuộc tính. Một bộ không thể được xác định nhờ vịtrí của nó trong quan hệ bộ nhận diện nhờ khóaKhóa (Key) Khóa của quan hệ là một hay một tập hợp cácthuộc tính mà giá trị của nó xác định duy nhấtmột bộ trong một quan hệ (khóa nội). Khóa đơn là khóa chỉ có một thuộc tính.Khóa kép làkhóa có hai thuộc tính trở lên Khóa tối thiểu là khóa chứa tối thiểu các thuộc tínhđể có thể tạo thành 1 khóa cho quan hệ. Khóa chính(primary key) là một khóa tối thiểu tốt nhất choquan hệ.Các khóa còn lại gọi là khóa dự bị Một/ một tập thuộc tính của quan hệ mà giá trị củanó khớp với khóa chính của một quan hệ khác thì nóđược gọi là khóa ngoại (foreign key) của quan hệđó.Lược đồ quan hệ Mô tả: Lược đồ quan hệ được mô tả thông qua một tân từ Ví dụ: Lược đồ CUNG_UNG(TenNCC, SanPham, Gia) Tân từ : Mỗi sự cung ứng sẽ được thựchiện bởi một nhà cung cấp, tương ứng vớimột sản phẩm. Mỗi sản phẩm được cungứng bởi một nhà cung cấp sẽ có một giá.Thể hiện của quan hệ Thể hiện (tình trạng) của quan hệR, ký hiệu là TR, là tập hợp các bộgiá trị của quan hệ R vào một thờiđiểm. Tại những thời điểm khácnhau thì quan hệ sẽ có những thểhiện khác nhau3.2.2. Biến đổi sơ đồ ER sang lược đồCSDL quan hệBước 1: Biến đổi các tập thực thể Một tập thực thể E được biến thành một quan hệ R mà lược đồ của R bao gồm các thuộc tính của E. Mỗi bộ của R là một thực thể trong E Ví dụ: tập thực thể CUSTOMERS CUSTOMERS(CNAME, CADDR, BALANCE) Nếu các thực thể trong E được xác định thông qua một liên kết với một tập thực thể F nào đó thì lược đồ R tương ứng có thuộc tính là các thuộc tính trong khóa chính của F. Ví dụ: tập thực thể MANAGERS chỉ có một thuộc tính ENAME là khóa của EMPS.Bước 2: Biến đổi liên kết Một liên kết giữa các tập thực thể E1, E2, .., Ek được biến thành một lược đồ R trong đó thuộc tính của R là tập tất cả các thuộc tính trong khóa của mỗi E1, E2, ..., Ek Ví dụ: Ta có quan hệ WORKS IN (ENAME, DNAME) trong đó ENAME là nhân viên trong phòng DNAME, còn quan hệ MANAGES (ENAME, DNAME) thì ENAME là quản lý của phòng DNAME Chú ý khi lấy các tập thuộc tính của R' cần: Đặt lại tên nếu có 2 thuộc tính của hai tập nào đótrùng tên Xác định miền giá trị và không làm mất các thực thể.Bước 3: Tìm khóa cho các lược đồ Ngyên tắc Nếu một lược đồ quan hệ được biến đổi từ một tậpcác thực thể, khóa của lược đồ quan hệ chính làkhóa của tập thực thể. Nếu một lược đồ quan hệ được biến đổi từ một liênkết nhiều - nhiều thì khóa của quan hệ là tất cả cácthuộc tính (khoá) của quan hệ Nếu một lược đồ quan hệ được biến đổi từ một liênkết một - một giữa hai tập thực thể E và F thì khóacủa lược đồ quan hệ có thể là khoá của E hoặc làkhoá của F. Nếu một lược đồ quan hệ được biến đổi từ một liênkết nhiều - một từ E1, E2, ..., Ek-1 đến Ek thì khóathường là hợp các khóa của E1, E2, .., Ek-1.Bước 4: Giản ước lược đồ CSDL Nguyên tắc Khi hai lược đồ quan hệ có khoá chung, có thể tổ hợp các thuộc tính của hailược đồ này và thay thế hai lược đồ nàybằng một lược đồ quan hệ mới với tậpthuộc tính là hợp của hai tập thuộc tínhcủa hai lược đồ quan hệ ban đầu. Tiết kiệm không gian bộ nhớ Truy vấn thuận tiện1. Giới thiệu chung1.1. Thiết kế CSDL QH và các cách tiếpcận Thiết kế cơ sở dữ liệu quan hệ xâydựng lược đồ CSDL QH gồm một tập cáclược đồ quan hệ thỏa mãn hai yêu cầu: Lưu trữ thông tin không dư thừa Tìm kiếm thông tin dễ dàng Quan hệ CUNG_UNG_0Dư thừa dữ liệuMột nhà cung cấp cung cấp nhiều mặt hàng.Lặp các thông tin về nhà cung cấp ứng với mỗi một mặthàng khác nhau của cùng nhà cung cấp đó. Quan hệ CUNG_UNG_0Không nhất quánDị thường khi cập nhật thông tin về nhà cung cấp nhưthay đổi địa chỉ.Dị thường khi thêm bộDị thường khi thêm mới thông tin về nhà cung cấp nhưngnhà cung cấp chưa cung cấp mặt hàng nào.Dị thường khi xóa bộTồn tại nhà cung cấp chỉ cung cấp một mặt hàng.Dị thường khi xóa thông tin về sự cung cấp xóa luônthông tin về nhà cung cấp.Tìm kiếm thông tinQuan hệ CUNG_UNG_0 tách thành 2 quan hệ CUNG_UNG_11và CUNG_UNG_12 Lưu trữ thông tin không dư thừa ??? Tìm kiếm thông tin dễ dàng ???Các cách tiếp cận Từ trên xuống(Topdown): Xây dựng sơ đồ thực thể liên kết ER từ các đặc tả Chuyển đổi sơ đồ ER thành lược đồ CSDL quan hệ. Chuẩn hóa lược đồ CSDL quan hệ (nếu cần) Từ dưới lên (Bottom Up): Xây dựng lược đồ quan hệ ban đầu từ các đặc tả. Chuẩn hóa lược đồ quan hệ.1.2. Phụ thuộc hàma. Khái niệm Cho quan hệ R, thuộc tính B của quanhệ R được gọi là phụ thuộc hàm vàothuộc tính A của quan hệ R nếu với mỗigiá trị của A xác định duy nhất một giátrị của B. A được gọi là xác định hàmcủa B. Ký hiệu: A->Ba. Khái niệm (t) Tập các phụ thuộc hàm F của 1 lượcđồ quan hệ R là một tập gồm cácphụ thuộc hàm xác định trên R. Ví dụ: Tập phụ thuộc hàm F={AB, BC} của R(A,B,C) Trong quan hệ R, ký hiệu A, B, C dànhcho các thuộc tính đơn, X, Y, Z dànhcho tập các thuộc tính.b. Hệ tiên đề Amstrong Giả thiết Lược đồ quan hệ R. X,Y,Z: tập các thuộc tính thuộc R. XY=XUY Hệ 3 tiên đề với các phụ thuộc hàm: Phản xạ:XY->X; XY->Y Tăng trưởng: X->Y thì XZ0>YZ Bắc cầu:X->Y, Y->Z thì X->ZLuật suy ra từ hệ tiên đề Luật hợp Nếu XY, XZ thì XYZ Luật tựa bắc cầu Nếu XY, WYZ thì XWZ Luật tách Nếu XY, Z thuộc Y thì XZc. Phụ thuộc hàm đầy đủvà phụ thuộc bắc cầu Phụ thuộc hàm đầy đủ Y phụ thuộc hàm đầy đủ vào X nếu Y phụthuộc hàm vào X nhưng không phụ thuộc hàmvào bất kỳ một tập con thực sự nào của X. Ví dụ Lược đồ R(A, B, C, D) F={ABC; ABD; BD} C phụ thuộc hàm đầy đủ vào {A,B} D không phụ thuộc hàm đầy đủ vào{A,B}Phụ thuộc bắc cầu Phụ thuộc hàm X A, A được gọi làphụ thuộc bắc cầu vào X nếu tồntại Y để cho X Y, Y A, Y / X và A XY Ví dụ: F = {AB, BC} AC: C phụ thuộc bắc cầu vào Ad. Bao đóng và phủ của tập các phụthuộc hàm Cho tập các phụ thuộc hàm F xácđịnh trên R. Bao đóng F+ của tập các phụ thuộchàm F là tập tất cả các phụ thuộc hàmđược suy diễn logic từ F. Phủ G của tập các phụ thuộc hàm F (G≈F) là tập các phụ thuộc hàm xácđịnh trên R sao cho G+ = F+.X+ ? Bao đóng X+ của thuộc tính X đốivới tập phụ thuộc hàm F là tất cảcác thuộc tính A mà phụ thuộc hàmXA có thể được suy diễn logic từ F nhờ hệ tiên đề Amstrong. Một phụ thuộc hàm XY thuộc F+ nếu Y thuộc X+: Kiểm tra XY cóthuộc F+Ý nghĩa của phụ thuộc hàm Chỉ ra các phụ thuộc dữ liệu/ràngbuộc có thể xảy ra giữa tập thuộctính của một lược đồ quan hệ. Giúp xác định khóa tối thiểu, khóachính của quan hệ.Giúp chuẩn hóa lược đồ quan hệ2. Chuẩn hóa lược đồ quan hệ Khái niệm Là quá trình phân tách các lược đồquan hệ thành các lược đồ quan hệ nhỏhơn theo một số tiêu chuẩn nhằm loạibỏ việc lưu trữ dư thừa dữ liệu. Phép tách thành các lược đồ quan hệđơn giản hơn, nhỏ hơn phải đảm bảokhông làm mất mát thông tin.2.1. Các dạng chuẩn Dạng chuẩn 1 Dạng chuẩn 2 Dạng chuẩn 3 Dạng chuẩn Boye-Codd Chuẩn 4 và các dạng chuẩn kháca. Dạng chuẩn 1(1NF) Định nghĩa Một lược đồ quan hệ R ở dạng chuẩn 1 nếu và chỉ nếu toàn bộ các miền giá trịcủa các thuộc tính trong R đều chỉ chứacác giá trị nguyên tố. Một quan hệ xác định trên lược đồ quanhệ ở dạng chuẩn 1 được gọi là quan hệở dạng chuẩn 1.Dạng chuẩn 1 (t) Một quan hệ thuộc dạng chuẩn 1 làmột quan hệ trong đó mỗi miền giátrị của một thuộc tính chỉ chứanhững giá trị nguyên tố (khôngphân chia được nữa). Một quan hệ thuộc dạng chuẩn 1 nếu mỗi một ô trong bảng chỉ chứaduy nhất một giá trịb. Dạng chuẩn 2 (2NF) Định nghĩa Một lược đồ quan hệ R được gọi là ởdạng chuẩn 2 nếu nó đã ở dạng chuẩn1 và mọi thuộc tính không khóa đềuphụ thuộc hàm đầy đủ vào khóa chính. Một quan hệ xác định trên lược đồ quanhệ ở dạng chuẩn 2 được nói là quan hệở dạng chuẩn 2.c. Dạng chuẩn 3 Định nghĩa Một lược đồ quan hệ R được gọi là ởdạng chuẩn 3 nếu nó đã ở dạng chuẩn2 và mọi thuộc tính không khóa của R đều chỉ phụ thuộc hàm duy nhất vàokhóa chính. Một quan hệ xác định trên lược đồ quanhệ ở dạng chuẩn ba được nói là quanhệ ở dạng chuẩn 3d. Dạng chuẩn Boye-Codd (BCNF) Chuẩn 3 không đáp ứng được nhữnglược đồ quan hệ Có nhiều hơn một khóa tối thiểu Các khóa tối thiểu là khóa kép Các khóa tối thiểu giao nhau Định nghĩa Một lược đồ quan hệ R thuộc dạngchuẩn Boye-Codd khi và chỉ khi mọixác định hàm đều là một khóa.2.2.1.Tách bảo toàn thông tin và táchbảo toàn tập phụ thuộc hàma. Phép tách bảo toàn thông tin Khái niệm Phép tách bảo toàn thông tin là phéptách lược đồ quan hệ sao cho khi kếtnối tự nhiên các quan hệ xác địnhtrên các lược đồ con, kết quả cho lạiquan hệ ban đầu.Phép kết nối tự nhiên Phép ghép các cặpbộ của hai quanhệ trên các thuộctính bằng nhaucủa hai quan hệ, một trong haithuộc tính củaphép so sánh "="được loại bỏ saukhi thực hiện phépghép.Thuật toán kiểm tra Kiểm tra phép tách không mất mát thông tin củamột lược đồ quan hệ thành nhiều lược đồ quan hệcon. Vào Lược đồ quan hệ: R=(A1, A2,... An) Tập phụ thuộc hàm F trên R Phép tách ρ=(R1, R2,... Rk) Ra Một khẳng định rằng phép tách ρ có mất mátthông tin hay không?Thuật toán kiểm tra (t) Phương pháp Bước 1: Xây dựng một bảng k hàng, n cột Hàng i tương ứng với Ri Cột j tương ứng với thuộc tính Aj Giá trị tại hàng i, cột j aj: Nếu Ajthuộc Ri bij: Nếu Ajkhông thuộc RiPhương pháp Bước 2: Lặp Áp dụng các phụ thuộc hàm cho bảng vđược xây dựng: XY: Nếu tồn tại haihàng có cùng giá trị trên X thì làm bằngnhau các giá trị trên Y. Nếu có giá trị một hàng thuộc Y là ajthì cgiá trị khác thuộc Y gán bằng aj. Nếu không gán bằng một trong các giá trịbij. Dừng khi các giá trị trong bảngkhông thể thay đổi được nữaPhương pháp Bước 3: Kiểm tra Nếu trong bảng có một hàng gồm toànký hiệu a1, a2, a3,... an thì phép tách làkhông mất mát thông tin. Ngược lại phép tách là mất mát thôngtin.Định lý kiểm tra Kiểm tra phép tách không mất mát thôngtin của một lược đồ quan hệ thành hailược đồ quan hệ con. Cho lược đồ quan hệ R Tập phụ thuộc hàm F trên R ρ=(R1, R2) Phép tách là không mất mát thông tin nếu R1 R2 R1\R2 hoặc R1 R2 R2\R1.b. Phép tách bảo toàn tập phụ thuộchàm Khái niệm Phép tách lược đồ quan hệ R thành các lược đồquan hệ con Rilà bảo toàn các tập phụ thuộchàm nếu hợp của các phụ thuộc hàm là hìnhchiếu của F trên Risuy diễn logic được tất cảcác phụ thuộc hàm trong F. Hình chiếu của F lên Rilà các phụ thuộc hàmXY thỏa mãn: X, Y thuộc Ri XY thuộc F+a. Thuật toán tìm một khóa tối thiểu của lượcđồ quan hệ dựa vào tập phụ thuộc hàm Khóa của lược đồ quan hệ Giá trị của tập thuộc tính khóa trên mỗibộ của quan hệ là duy nhất Mọi thuộc tính của quan hệ phải phụthuộc hàm vào khóa. Thuật toán tìm một khóa tối thiểu Loại bỏ dần từng thuộc tính thuộc khóacủa quan hệ cho tới khi tập thuộc tínhnhỏ nhất còn lại vẫn thỏa mãn là mộtkhóa khóa tối thiểu của quan hệ.b.Thuật toán tách không mất mát thông tin và bảo toàn tập phụ thuộc hàm về dạngchuẩn 3 Vào: Lược đồ quan hệ R Tập phụ thuộc hàm F (phủ tối thiểu) Ra: Tập sơ đồ con, trong đó mỗi sơ đồ con Thuộc dạng chuẩn 3 Phụ thuộc hàm là hình chiếu của F lênNób.Thuật toán tách không mất mát thông tin và bảo toàn tập phụ thuộc hàm về dạngchuẩn 3 (t) Phương pháp: Nếu tồn tại một thuộc tính thuộc R khôngcó mặt ở vế trái hay vế phải của bất kỳphụ thuộc hàm nào thì tách thuộc tính nàyra khỏi R. Nếu tồn một tại phụ thuộc hàm liên quantới mọi thuộc tính của R thì kết quả là R. Nếu các phụ thuộc hàm dạng: XA : lược đồ con ở dạng XA. XA1, ...XAn: lược đồ con ở dạng XA1...Anc.Thuật toán tách không mất mát thông tin về dạng chuẩn Boye-Codd Vào : Lược đồ quan hệ R Tập phụ thuộc hàm F Ra: Tập sơ đồ con, trong đó mỗi sơ đồ con Thuộc dạng chuẩn Boye-Codd Phụ thuộc hàm là hình chiếu của F lên nóc.Thuật toán tách không mất mát thôngtin về dạng chuẩn Boye-Codd (t) Phương pháp: ρ = (R) Lặp S là một sơ đồ quan hệ trong ρ không ở dạngchuẩn Boye-Codd. Xét một phụ thuộc hàmXA của S. Nếu X không chứa khóa của S, A không thuộc X thì S được tách thành: S1 = A U{X} S2 = S\{A} Dừng cho tới khi mọi sơ đồ con trong ρ đãthuộc dạng chuẩn Boye-Codd2.2.3. Tách lược đồ quan hệ theo từngbước Quy tắc Quy tắc 1: Loại bỏ các thuộc tính phụ thuộc chỉmột phần vào khóa chính. Chuẩn hóa về 2NF Quy tắc 2: Loại bỏ các thuộc tính không khóakhông phụ thuộc vào khóa chính.Chuẩn hóa về 3NF Quy tắc 3: Loại bỏ các thuộc tính là giao củacác khóa tối thiểu.Chuẩn hóa về BCNF3. Ràng buộc toàn vẹn trong CSDL quanhệ (Integrity Constraint)3.1. Khái niệm ràng buộc toàn vẹn Ràng buộc toàn vẹn là điều kiện bất biến không được vi phạm trong mộtCSDL. Các điều kiện mà mọi thể hiện của quan hệ phải thỏa mãn RBTV xuất phát từ các quy tắc quản lý được áp đặt lên thế giới thực Ví dụ: RBTV1: Mỗi bộ của quan hệ DON_DAT_HANG phải ứng với một đơnđặt hàng với mã đơn đặt hàng (MaDDH) duy nhất. RBTV2: Mọi chi tiết về đơn đặt hàng phải có mã hàng (MaHang) thuộcvề danh mục hàng. RBTV3: Mã đơn đặt hàng (MaDDH) khác NULL. RBTV4: Tổng các trị giá của các mặt hàng trong CHI_TIET_DON_HANGcó cùng MaDDH phải bằng TongGT ghi trong DON_DAT_HANG Mục đích của RBTV Đảm bảo tính nhất quán của dữ liệu(RBTV2, RBTV4) Đảm bảo ngữ nghĩa nghĩa thực tế của dữ liệu(RBTV1, RBTV3) RBTV được xác định và mô tả trong quátrình thiết kế csdl. RBTV có 3 yếu tốchính: Nội dung Bối cảnh Tầm ảnh hưởng RBTV được khai báo thông qua ngôn ngữđịnh nghĩa và thao tác dữ liệu và được hỗtrợ bởi hqt csdl. Mệnh đề check, arssertion, triger RBTV được kiểm tra và xử lý bởi hqt csdl.1.1.Đại số quan hệ Đại số quan hệ cung cấp tám phép toán tác động trên các quan hệ vàcho kết quả cũng là một quan hệgồm: Các phép toán tập hợp: Hợp, trừ, giao, tich Đề các. Các phép toán quan hệ: Chọn, chiếu, kết nối, chiaQuan hệ khả hợp Định nghĩa: Hai quan hệ là khả hợp nếuchúng được xác định trên cùng tập thuộc tính và các thuộc tính cùng tên có cùng miền giá trị.a. Phép hợp (union) Định nghĩa: Phép hợp của hai quan hệ khả hợp r vàs, ký hiệu là r U s, là tập tất cả các bộthuộc r hoặc thuộc s hoặc thuộc cả hai quan hệ.b. Phép giao Định nghĩa: Phép giao của hai quan hệ khả hợp r vàs, ký hiệu là r s, là tập tất cả các bộthuộc cả hai quan hệ r và sc. Phép trừ Định nghĩa: Phép trừ của hai quan hệ khả hợp r vàs, ký hiệu là r-s, là tập tất cả các bộthuộc r nhưng không thuộc s.d. Phép tích Đề các Định nghĩa: Cho quan hệ r xác định trên tập thuộc tính {A1, ..., An} và quan hệ s xác định trên tập thuộc tính {B1, ..., Bm}. Tích Đềcác của hai quan hệ r và s ký hiệu làr x s là tập tất cả các (m+n)-bộ có n thành phần đầu tiên là một bộ thuộc r và m thành phần sau là một bộ thuộc s.e. Phép chiếu Định nghĩa; Cho quan hệ r xác định trên tập thuộc tính U={A1, ..., An}. X U. Phép chiếu của r trên tập thuộc tính X , ký hiệu làΠx(r), là tập các bộ của r xác định trên X. Phép chiếu trên một quan hệ thựcchất là phép toán loại bỏ đi một sốthuộc tính và chỉ giữ lại những thuộctính còn lại của quan hệ đó.f. Phép chọn Định nghĩa: Cho r là một quan hệ, F là một biểu thức điều kiện. Phép chọn trên r vớibiểu thức chọn F, ký hiệu σF(r), là tập tất cả các bộ của r thỏa mãn điều kiện F.Phép chọn là phép toán lọc ra mộttập con các bộ của quan hệ đã chothỏa mãn một điêu kiện xác định. Điều kiện dó được gọi là điều kiệnchọn hay biểu thức chọn.g. Phép chia Định nghĩa: Cho hai quan hệ r xác định trên n thuộc tính, s xác định trên m thuộc tính (n>m, s ≠ ø), phép chia quan hệ r cho quan hệ s, ký hiệu r ÷ s, là các bộ t sao cho với mọi bộ v thuộc s thì t ghép với v thuộc r.h. Phép kết nối Khái niệm: Phép kết nối hai quan hệ r, s, ký hiệu r s là phép ghép các cặp bộ của hai quan hệ thỏa mãn một điều kiện kết nối hay một biêu thức kết nối F.
Bạn đang đọc truyện trên: ZingTruyen.Xyz