Xác định các tệp CSDL trên cơ sở các thông tin đầu ra của hệ thống là phương pháp cổ điển và cơ bản của việc thiết kế CSDL. Các bước chi tiết khi thiết kế CSDL từ các thông tin ra:
Bước 1. Xác định các đầu ra:
- Liệt kê toàn bộ các thông tin đầu ra.
Bước 2. Xác định các tệp cần thiết cung cấp đủ dữ liệu chọn việc tạo ra từng đầu ra:
- Rà soát các phần tử thông tin trên đầu ra nhằm xác định các thuộc tính lặp, các thuộc tính thứ sinh.
- Loại bỏ khỏi danh sách các thuộc tính thứ sinh.
- Bổ sung các thuộc tính khoá để nhận diện các đối tượng cần quản lý.
- Thực hiện các bước chuẩn hoá:
Chuẩn hoá mức 1 (1NF): Trong mỗi danh sách không được phép chứa những thuộc tính lặp. Nếu có các thuộc tính lặp thì phải tách các thuộc tính đó ra thành các danh sách con, có một ý nghĩa dưới góc độ quản lý.
Chuẩn hoá mức 2 (2NF): Trong một danh sách mỗi thuộc tính phải phụ thuộc hàm vào toàn bộ khoá chứ không chỉ phụ thuộc vào một phần của khoá. Nếu có sự phụ thuộc như vậy thì phải tách những thuộc tính phụ thuộc hàm vào bộ phận của khoá thành một danh sách con mới.
Chuẩn hoá mức 3 (3NF): Trong một danh sách không được phép có sự phụ thuộc bắc cầu giữa các thuộc tính.
Bước 3: Tích hợp các tệp để tạo ra một CSDL duy nhất:
Từ mỗi đầu ra khi thực hiện ở bước 2 sẽ tạo ra rất nhiều danh sách. Những danh sách nào cùng mô tả về một thực thể thì phải tích hợp lại, tạo ra một danh sách chung, bằng cách tập hợp tất cả các thuộc tính chung và riêng của những danh sách đó.
Bước 4: Xác định khối lượng dữ liệu cho từng tệp và toàn bộ sơ đồ:
- Xác định số lượng các bản ghi cho tứng tệp.
- Xác định độ dài cho một thuộc tính. Tính độ dài cho bản ghi.
Bước 5: Xác định liên hệ logic giữa các tệp và thiết lập sơ đồ cấu trúc dữ liệu (DSD)
Xác định mối liên hệ giữa các tệp, biểu diễn các tệp và vẽ sơ đồ liên kết giữa các tệp.
2.5.2. Thiết kế CSDL bằng phương pháp mô hình hoá quan hệ thực thể:
Cùng với phương pháp thứ nhất, phương pháp thứ hai này sẽ bổ sung cho quá trình mô hình hoá hệ thống thông tin một cách đầy đủ.
a. Một số khái niệm CSDL quan hệ:
- Thực thể (Entity): Là một tập hợp các đối tượng cùng loại mà nhà quản lý quan tâm tới. Ví dụ thực thể KhachHang
Thực thể cụ thể (hay lần xuất): Là một phần tử của tập hợp. Ví dụ khách hàng Nguyễn Văn A là một phần tử của tập hợp KhachHang nói trên. Thực thể khái quát - thành viên: Trong đó, thực thể khái quát chứa định
danh, các thuộc tính chung và các thuộc tính xác định nhóm phân cấp. Thực thể thành viên chứa định danh và các thuộc tính riêng có. Ví dụ, thực thể SinhVien, thực thể HoVay là thực thể thành viên của thực thể
KhachHang vì nó có chung một số thuộc tính về họ tên, giới tính… nhưng khác nhau về đặc điểm hoạt động.
- Thuộc tính: Thuộc tính để dùng để mô tả các đặc trưng của một thực thể hoặc một quan hệ. Có 3 loại thuộc tính:
Thuộc tính mô tả: Mô tả về thực thể, có thể định tính hoặc định lượng. Thuộc tính định danh: Thuộc tính dùng để xác định một cách duy nhất
mỗi lần xuất của thực thể.
Thuộc tính khoá: dùng để chỉ đến một lần xuất nào đó trong thực thể có quan hệ.
- Mối quan hệ: Một thực thể không tồn tại độc lập với các thực thể khác. Có sự liên hệ qua lại giữa các thực thể với nhau. Khái niệm liên kết hay quan hệ được dùng để trình bày, thể hiện những mối liên hệ tồn tại giữa các thực thể.
- Số mức của quan hệ: Cho biết bao nhiêu lần xuất của thực thể A tương tác với một lần xuất của thực thể B và ngược lại.
- Số chiều của quan hệ: Số lượng các thực thể tham gia vào quan hệ đó.
b. Mô hình hoá quan hệ thực thể:
Một số kí pháp:
- Thực thể:
- Mối quan hệ:
1@1 Liên kết loại Một-Một
A 1 R 1 B
Một lần xuất của thực thể A được liên kết với chỉ một lần xuất của thực thể B và ngược lại.
1@N liên kết loại Một- Nhiều
A 1 R N B
Mỗi lần xuất của thực thể A được liên kết với một hoặc nhiều của thực thể B và mỗi lần xuất của thực thể B chỉ liên kết với duy nhất một lần xuất của thực thể A.
N@M liên kết loại Nhiều- Nhiều
A N R M B
Một lần xuất của thực thể A được liên kết với một hoặc nhiều lần xuất của thực thể B và mỗi lần xuất của thực thể B được liên kết với một hoặc nhiều lần xuất của thực thể A.
c. Chuyển đổi sơ đồ khái niệm sang sơ đồ cấu trúc dữ liệu:
Từ các sơ đồ khái niệm, bước tiếp theo là việc chuyển đổi sơ đồ này sang sơ đồ cấu trúc dữ liệu. Đây chính là pha thiết kế logic trong quá trình thiết kế CSDL.
- Quan hệ 1-1: Chỉ tạo ra một tệp chung duy nhất để biểu diễn thực thể đó. Khoá của tệp là định danh của thực thể.
- Quan hệ 1-N: Tạo ra một hai tệp thể hiện mỗi kiểu thực thể đó. Khoá của tệp là thuộc tính định danh của thực thể. Quan hệ được thể hiện bằng cách thêm thuộc tính định danh của tệp bên một vào tệp bên nhiều.
- Quan hệ N-M: Sinh ra ba tệp, trong đó 2 tệp ứng với 2 thực thể, 1 tệp chứa 2 định danh của 2 thực thể có quan hệ.
- Quan hệ khái quát - thành viên: Sinh ra một tệp cho thực thể khái quát, các tệp cho từng thực thể thành viên. Trong tệp thực thể khái quát có thêm thuộc tính phân loại các thực thể thành viên đó.
Trên đây là những công cụ và phương pháp chung cần thiết để phân tích và thiết kế, đặc biệt là việc thiết kế CSDL một HTTT nói chung. Trong quá trình thực hiện, do những yêu cầu khách quan và những ràng buộc phức tạp của tổ chức, ta không thể áp dụng một cách máy móc các bước thực hiện trên, nhưng đó là khung thực hiện chung mà ta có thể dựa vào đó để thực hiện có quy trình. Khi một hệ thống mới được thực hiện thì có ba khả năng về dữ liệu:
Các kho dữ liệu cần thiết đã có theo đúng đặc trưng thiết kế, do vậy không cần chuẩn bị gì.
Các kho dữ liệu đã tồn tại nhưng không đầy đủ và cấu trúc chưa phù hợp, cần phải nhập thêm những dữ liệu mới chưa có trên máy và trích các dữ liệu có cấu trúc chưa phù hợp từ các tệp hay từ các CSDL, sửa và ghi lại vào CSDL của hệ thống.
Các kho dữ liệu hoàn toàn chưa tồn tại, buộc phải tạo ra.
Như vậy, tuỳ từng hệ thống mà ta phải tạo mới hoàn toàn các tệp CSDL, hoặc chỉ cần thay đổi trên hệ thống cũ cho phù hợp với yêu cầu mới