Cơsởlýthuyết phân tíchthiếtkếcơsởdữ liệu. 3.1 Tổng quan về cơsởdữ liệu. 3.1.1 Cơsởdữliệu là gì? Cơsởdữliệu là tập dữliệu về một đơn vị tổ chức đợc lu trên máy và có cách tổ chức quản lý theo một mô hình phù hợp với đơn vị tổ chức đó. Hệ quản trị cơsởdữliệu là hệ thống các phần mềm cho phép mô tả, lu trữ thao tác các dữliệu trên cơsởdữliệu nó bảo đảm bí mật, an toàn với nhiều ngời sử dụng. 3.1.2 Một số khái niệm cơ bản. a.Thực thể. Là một đối tợng cụ thể hay trừu tợng tồn tại thực sự và khá ổn định trong thế giới thực mà ta muốn phản ánh nó trong hệ thống thông tin. Ví dụ: giáo viên, hàng hoá: Là đối tợng cụ thể. Dự án: Là đối tợng trừu tợng. b.Thuộc tính. Là tính chất mô tả một khía cạnh nào đó của thực thể nh vậy thuộc tính là thông tin cần quản lýdữ liệu. c.Khoá. Là một thuộc tính duy nhất cho phép nhận diện sự thể hiện của thực thể. 3.1.3 Quan hệ. Là sự gom nhóm hai hay nhiều thực thể với nhau trong đó mỗi thực thể có một vai trò nhất định. a.Quan hệ 1-1. Một phần tử của A kết hợp với không quá một phần tử của B: b.Quan hệ 1-nhiều. Một phần tử của A có thể kết hợp với N phần tử của B và ngợc lại một phần tử của B chỉ kết hợp duy nhất với một phần tử của A. c.Quan hệ nhiều-nhiều. Một phần tử của A có thể kết hợp với N phần tử của B và ngợc lại mỗi phần tử của B có thể kết hợp với N phần tử của A. Trong đó: A, B là tập thuộc tính. R là tập hữu hạn các phần tử, R 3.1.4 Các dạng chuẩn. a.Phụ thuộc hàm. A xác định B hay B phụ thuộc hàm vào A{(A B): Khi đó mỗi phần tử của A chỉ xác định đợc duy nhất một phần tử của B}. b.Dạng chuẩn 1NF-First Normal Form: Dạng khởi đầu của chuẩn hoá cơ sởdữ liệu. Yêu cầu của dạng chuẩn này là cơ sởdữliệu phải đảm bảo không có nhóm lặp và chỉ có thể tồn tại các phụ thuộc hàm không phụ thuộc đầy đủ vào khoá chính-phụ thuộc một phần vào khoá. c . Dạng chuẩn 2NF-Seccond Normal Form : Bảng đợc coi là ở dạng chuẩn 2NF nếu nó ở dạng chuẩn 1NF, đồng thời không tồn tại các phụ thuộc hàm phụ thuộc không đầy đủ vào khoá, có thể tồn tại các phụ thuộc hàm gián tiếp. d.Dạng chuẩn 3NF-Third Normal Form: Bảng đợc coi là ở dạng chuẩn 3NF nếu nó ở dạng chuẩn 2NF, đồng thời không tồn tại các phụ thuộc hàm gián tiếp, có thể tồn tại các phụ thuộc hàm có nguồn là một thuộc tính không khoá, có đích là một thuộc tính khoá. e . Dạng chuẩn Boyce-Codd-BCNF : Là chuẩn 3NF với yêu cầu là các cột xác định phải chỉ ra duy nhất một bản ghi. h . Dạng chuẩn 4NF : Đợc thiếtkế dựa trên chuẩn BCNF nhng nếu có sự phụ thuộc đa trị không hiển nhiên giữa 2 cột A và B thì tất cả các cột khác phải phụ thuộc hàm vào cột A. 3.2. Các bớc xây dựng-thiết kếcơsởdữliệu logic Quá trình thiết kếdữliệu logic có đầu vào là một mô hình dữliệu quan niệm, đầu ra là một tập các quan hệ đợc chuẩn hoá: Mô hình dữliệu quan niệm(sơ đồ E-R) Biểu diễn các thực thể Hợp nhất các quan hệ Biểu diễn các mối quan hệ Chuẩn hoá các quan hệ Mô hình dữliệu logic(các quan hệ chuẩn) Quá trình thiếtkế logic 3.2.1 Biểu diễn các thực thể. Trớc tiên, mỗi thực thể của sơ đồ E-R đợc biểu diễn thành một quan hệ. Trong đó các thuộc tính của thực thể trở thành các thuộc tính của quan hệ và thuộc tính định danh của thực thể trở thành khoá chính của quan hệ Một quan hệ có thể biểu diễn dới dạng bảng hay dạng cấu trúc(một lợc đồ quan hệ). Vídụ:Mô hình thực thể NHACUNGCAP đợc biêu diễn ở hai dạng nh sau: Dạng bảng: NHACUNGCAP. MãNCC TênNCC Địachỉ Đthoại NCC1 Trần Lập 20-Bà Triệu 04-7844746 Dạng cấu trúc: 3.2.2 Biểu diễn các mối quan hệ Một mối quan hệ đợc biểu diễn bằng một hình thoi, bên trong hình thoi là tên của quan hệ và đợc lối với các kiểu thực thể liên quan. Biểu diễn mối quan hệ còn phụ thuộc vào bậc cũng nh bản số của quan hệ đó: a.Quan hệ 1-nhiều hai ngôi và không có thuộc tính riêng. Nh vậy quan hệ ĐƠNHàng đợc biểu diễn bằng cách thêm khoá chính của quan hệ tơng ứng với phía 1(Mãkhách) vào quan hệ tơng ứng với phía nhiều để trở thành khoá ngoại của quan hệ này. b.Quan hệ nhiều-nhiều(N:N) hoặc có thuộc tính riêng, hoặc có mối quan hệ bậc 3 trở lên. Nh vậy quan hệ mới sinh ra sẽ đợc biểu diễn có dạng là: VậnchuyểN(MãNCC, Mãhàng, Ngàychuyển , Sốlợng) 3.2.3.Chuẩn hoá các quan hệ. Là quá trình chuyển một quan hệ có cấu trúc dữliệu phức hợp thành các quan hệ có cấu trúc dữliệu đơn giản hơn và vững chắc. Quá trình chuẩn hoá thờng gồm một số bớc tơng ứng với một dạng chuẩn: (1) Quan hệ ch a chuẩn hoá: -Quan hệ cha chuẩn hoá là quan hệ có chứa thuộc tính lặp. Vídụ: Đơnhàng(Sốđơn, Mãkhách, Địachỉ, Ngàyđặt, Mãhàng, Tênhàng, Đơnvị, Sốlợng) (2) Quan hệ ở dạng chuẩn 1: -Là quan hệ không chứa thuộc tính lặp. -Tách một quan hệ cha chuẩn hoá thành quan hệ ở dạng chuẩn 1. +Quan hệ 1: Gồm các thuộc tính lặp và phần khoá xác định chúng. +Quan hệ 2: Gồm các thuộc tính còn lại và khoá chính. (3) Quan hệ ở dạng chuẩn 2: -Là quan hệ : +ở dạng chuẩn 1. +Không tồn tại các thuộc tính không khoá phụ thuộc vào một phần khoá chính. -Tách một quan hệ ở dạng chuẩn 1 thành quan hệ ở dạng chuẩn 2: + Quan hệ 1: Gồm các thuộc tính phụ thuộc vào một phần khoá chính và phần khoá xác định chúng. + Quan hệ 2: Gồm các thuộc tính còn lại và khoá chính. (4) Quan hệ ở dạng chuẩn 3: -Là quan hệ: + ở dạng chuẩn 2. +Không tồn taị các thuộc tính không khoá phụ thuộc bắc cầu vào khoá chính(qua một thuộc tính gọi là thuộc tính cầu). -Tách một quan hệ ở dạng chuẩn 2 thành quan hệ ở dạng chuẩn 3: +Quan hệ 1: Gồm các thuộc tính phụ thuộc bắc cầu và thuộc tính cầu. +Quan hệ 2: Gồm các thuộc tính còn lại và thuộc tính cầu. ( 5) Quan hệ ở dạng chuẩn BCNF: -Là quan hệ : + ở dạng chuẩn 3. + Không tồn tại các thuộc tính không khoá phụ thuộc hàm vào khoá chính (khoá dự tuyển). -Tách quan hệ ở dạng chuẩn 3 thành quan hệ ở dạng chuẩn BCNF: + Quan hệ 1: Gồm các thuộc tính không chứa khoá dự tuyển. + Quan hệ 2: Gồm các thuộc tính còn lại và khoá dự tuyển. (6) Quan hệ ở dạng chuẩn 4: -Là quan hệ : + ở dạng chuẩn BCNF. +Không tồn tại các thuộc tính không khoá phụ thuộc đa trị vào thuộc tính khoá. -Tách quan hệ ở dạng chuẩn BCNF thành quan hệ ở dạng chuẩn 4: + Quan hệ 1: Gồm các thuộc tính phụ thuộc đa tri vào khoá chính và phần khoá xác định chúng. + Quan hệ 2: Gồm các thuộc tính còn lại và thuộc tính đa trị. Nh vậy để chuẩn hoá các quan hệ ta xét lần lợt từng quan hệ và kiểm tra tính chuẩn của nó.Muốn vậy trớc hết ta phải xác định các phụ thuộc hàm và khoá chính của quan hệ.Sau đó kiểm tra lần lợt các chuẩn đối với quan hệ. Ta có thể mô tả bằng sơ đồ sau: Tách nhóm lặp Loại phụ thuộc đa trị Phân rã loại dị thờng Bảng với nhóm lặp Chuẩn 3 Chuẩn BCNF Chuẩn 4 Chuẩn 5 Tách phụ thuộc bộ phận Tách phụ thuộc hàm không chứa khoá dự tuyển Chuẩn 1 Chuẩn 2 Tách phụ thuộc bắc cầu 3.2.4 Hợp nhất các quan hệ. Sau khi chuyển sơ đồ E-R thành mô hình dữliệu quan hệ, ta cần xác định các chuẩn của quan hệ và tiến hành chuẩn hóa nếu cần thiết, sau đó tiến hành tích hợp dữ liệu. Trong quá trình tích hợp dữliệu thờng gặp một số vấn đề nh: Đồng nghĩa, Đồng danh, Phụ thuộc bắc cầu, Quan hệ thực thể chính và thực thể con. a.Đồng nghĩa: Trong một số trờng hợp hai hay nhiều thuộc tính khác tên nhng có cùng một nghĩa, cùng mô tả một tính chất của một thực thể. Những thuộc tính nh vậy gọi là đồng nghĩa. Khi hợp nhất quan hệ có chứa các đồng nghĩa ta cần có sự thoả thuận với ngời dùng, chuẩn hoá tên thuộc tính đó và hạn chế sự đồng nghĩa khác. b.Đồng danh: Trong nhiều trờng hợp khác nhau, một thuộc tính đợc gọi là đồng danh nếu nó có thể có nhiều hơn một nghĩa hoặc mô tả nhiều tính chất khác nhau. Khi hợp nhất các quan hệ ta chỉ cần tạo ra một tên mới cho những thuộc tính đó. c.Phụ thuộc bắc cầu: Khi hai quan hệ chuẩn 3 đợc hợp nhất từ hai quan hệ riêng rẽ thì có thể nảy sinh sự phụ thuộc bắc cầu. Khi đó ta cần tạo ra một chuẩn 3 bằng cách tách phụ thuộc hàm khỏi quan hệ trên. . Cơ sở lý thuyết phân tích thiết kế cơ sở dữ liệu. 3.1 Tổng quan về cơ sở dữ liệu. 3.1.1 Cơ sở dữ liệu là gì? Cơ sở dữ liệu là tập dữ liệu về một. vào cột A. 3.2. Các bớc xây dựng -thiết kế cơ sở dữ liệu logic Quá trình thiết kế dữ liệu logic có đầu vào là một mô hình dữ liệu quan niệm, đầu ra là một