Tải bản đầy đủ (.ppt) (23 trang)

Bài 1 Thiết Kế Cơ Sở Dữ Liệu pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (333.67 KB, 23 trang )

Bài 1
Thiết Kế Cơ Sở Dữ
Liệu
Database Design and Implementation with
SQL Server / Session 1 /
2 of 23
Mục đích bài học

Ôn lại khái niệm CSDL quan hệ và các thành phần cơ bản của
SQL Server.

Tìm hiểu nội dung của thiết kế CSDL và các khái niệm liên quan
như mô hình hóa CSDL.

Tìm hiểu khái niệm chuẩn hóa CSDL trong quan hệ với mô hình
hóa CSDL

Tìm hiểu sơ đồ quan hệ - thực thể và cách dùng trong thiết kế
CSDL

Khái niệm toàn vẹn dữ liệu và thao tác với toàn vẹn dữ liệu

Tìm hiểu từ điển dữ liệu, thiết kế bảo mật, thiết kế vật lý trong
quan hệ với thiết kế CSDL
Database Design and Implementation with
SQL Server / Session 1 /
3 of 23
Các khái niệm cơ bản về CSDL
quan hệ và SQL Server

Sự cần thiết của CSDL và các mô hình của một CSDL



Khái niệm bảo toàn thực thể

Khóa chính

Khóa phụ

Tạo bảng trong SQL Server 2000

Khái niệm về công cụ Enterprise Manager và Query Analyzer

Định nghĩa các ràng buộc về toàn vẹn và lựa chọn các ràng buộc đảm bảo toàn
vẹn

Khái niệm T-SQL và Enterprise Manager

Các kiểu dữ liệu trong SQL Server và các biểu thức điều kiện

Thao tác với dữ liệu trong bảng dùng T-SQL

Các câu lệnh T-SQL truy vấn CSDL

Các câu lệnh T-SQL truy vấn dữ liệu theo nhóm

Các hàm tập hợp trong SQL Server

Dùng INNER JOINS truy vấn dữ liệu từ nhiều bảng trong SQL Server 2000

Khái niệm về xuất và nhập dữ liệu dùng các công cụ chuyển đổi của Enterprise
Manger

Database Design and Implementation with
SQL Server / Session 1 /
4 of 23
Các mục đích chính của bài
học

Tìm hiểu quá trình thiết kế CSDL và các khái niệm liên quan như
mô hình hóa CSDL

Tìm hiểu khái niệm xử lý theo lô (Batch processing)

Tìm hiểu khái niệm giao dịch (transactions)

Tìm hiểu các khái niệm khóa (lock), khóa chết (deadlocks) trong
CSDL

Tìm hiểu cơ chế bảo mật của SQL Server 2000

Quản lý các truy vấn con (Sub-Queries), chỉ mục (indexes) và
các liên kết (joins)

Tìm hiểu khái niệm stored procedures và Triggers trong SQL
Server 2000
Database Design and Implementation with
SQL Server / Session 1 /
5 of 23
Thiết kế và mô hình hóa
CSDL

CSDL: là một tập hợp các dữ liệu được tổ

chức giúp cho việc truy xuất, quản lý và cập
nhật dễ dàng hơn

Thông tin là kết quả phân tích dữ liệu một
cách thông minh

Thiết kế CSDL: là đưa ra cấu trúc của các đối
tượng dữ liệu và mối quan hệ giữa các đối
tượng đó trong CSDL
Database Design and Implementation with
SQL Server / Session 1 /
6 of 23
CSDL thông tin học viên
Database Design and Implementation with
SQL Server / Session 1 /
7 of 23
Một số đặc điểm của thiết
kế CSDL

Thiết kế CSDL tồi:

CSDL hoạt động không hiệu quả

Có nhiều vấn đề trong việc cập nhật và
truy xuất dữ liệu

Thiết kế CSDL tốt:

CSDL hoạt động hiệu quả cao


Dễ dàng mở rộng

Thuận lợi cho việc phát triển ứng dụng
Database Design and Implementation with
SQL Server / Session 1 /
8 of 23
Thiết kế một CSDL

Bất kể độ lớn và tính phức tạp của một CSDL,
việc thiết kế một CSDL đều theo các bước
sau:

Thu thập thông tin

Xác định các đối tượng dữ liệu

Thiết kế mô hình dữ liệu

Xác định các loại thông tin cần quản lý cho từng
đối tượng dữ liệu

Xác định mối quan hệ giữa các đối tượng
Database Design and Implementation with
SQL Server / Session 1 /
9 of 23
Các bước thiết kế CSDL

Thu thập thông tin

Phỏng vấn những người liên quan đến hệ thống.


Xác định các yêu cầu của người dùng đối với hệ thống mới.

Xác định các vấn đề, các hạn chế của hệ thống hiện tại.

Thu thập các báo cáo khách hàng, báo cáo kho, báo cáo quản lý và
toàn bộ các tài liệu liên quan đến hệ thống hiện tại

Xác định các đối tượng dữ liệu

Xác định các đối tượng và thực thể chính cần quản lý trong CSDL

Các đối tượng hữu hình : một người, một sản phẩm

Các đối tưựong vô hình : một giao dịch kinh doanh,một phòng ban
của công ty hay một kỳ lương

Mỗi đối tượng duy nhất xác định được sẽ tương ứng với một bảng
dữ liệu trong CSDL
Database Design and Implementation with
SQL Server / Session 1 /
10 of 23

Mô hình hóa các đối tượng

Record the objects in a way that represents the
system visually

Xác định các loại hình thông tin của mỗi
đối tượng dữ liệu


Xác định các loại thông tin cần lưu trữ của mỗi đối
tượng

Các trường dữ liệu đơn thuần: Lưu các thông
tin hữu hình như tên, các thông tin này được xác
định bởi các nguồn bên ngoài CSDL.

Các trường dữ liệu phân loại: Phân loại hoặc
nhóm dữ liệu và lưu các dữ liệu mục lục như
true/false, married/single, VP/Director/Group
Manager, v.v….
Các bước thiết kế CSDL
(tiếp…)
Database Design and Implementation with
SQL Server / Session 1 /
11 of 23

Các trường dữ liệu xác định thực thể: giúp xác định
từng thực thể lưu trong bảng; thông thường tên các trường
này có từ id hay number (ví dụ: employee_id,
invoice_number)

Các trường quan hệ tham chiếu: giúp thiết lập kết nối
các thông tin trong một bảng với thông tin liên quan trong
bảng khác

Xác định mối quan hệ giữa các đối tượng

Xem xét các bảng dữ liệu


Xác định mối quan hệ logic giữa chúng

Thêm các trường quan hệ thiết lập kết nối giữa các bảng
Các bước thiết kế CSDL
(tiếp…)
Database Design and Implementation with
SQL Server / Session 1 /
12 of 23
Mô hình hóa dữ liệu
Các yêu cầu về thông tin nghiệp vụ
CSDL thực thi
Mô hình dữ liệu
khái niệm
Mô hình dữ liệu
Logic
Mô hình dữ liệu
vật lý
Mô hình
nghiệp vụ
Mô hình
hệ thống
Database Design and Implementation with
SQL Server / Session 1 /
13 of 23
Mô hình dữ liệu khái niệm

Mô hình dữ liệu trừu tượng mức cao

Giản đồ khái niệm (Conceptual schema) cung

cấp mô tả cố định các yêu cầu của CSDL

Độc lập với CSDL

Có 3 loại trừu tượng hóa

Phân loại

Tổng hợp

Khái quát
Database Design and Implementation with
SQL Server / Session 1 /
14 of 23
Mô hình dữ liệu Logic

Thông tin được sử dụng trong doanh nghiệp dựa trên một mô hình dữ
liệu cụ thể

Không phụ thuộc vào loại CSDL dùng hay các ràng buộc vật lý khác

Mô hình quan hệ thực thể : là quá trình thiết kế CSDL thể hiện toàn bộ
cấu trúc logic của CSDL

Thực thể : Thực thể là một đối tượng tồn tại độc lập với các đối tượng
khác. Thực thể có thể là một đối tượng cụ thể (như một người hay một
cuốn sách) hay là một đối tượng vô hình(như một kỳ nghỉ hay một khái
niệm).

Tập hợp các thực thể: là một tập hợp các thực thể cùng loại (ví dụ:

những người có tài khoản ở ngân hàng).

Thuộc tính: Một thực thể được cụ thể hóa bằng một tập các thuộc tính. Ví
dụ: Tên, Số bảo hiểm xã hội (SSN), Tuổi, Địa chỉ, Thành phố của một thực
thể “Người”.

Quan hệ và tập hợp các quan hệ: Quan hệ là sự liên kết giữa hai hay
nhiều thực thể. Một tập hợp các quan hệ bao gồm các quan hệ cung kiểu
với nhau.
Database Design and Implementation with
SQL Server / Session 1 /
15 of 23
Quan hệ
Customer
Account
CustAcc
t
Quan hệ giữa hai thực thể
Customer
Loan
Borrow
Branch
Quan hệ giữa ba thực thể
Database Design and Implementation with
SQL Server / Session 1 /
16 of 23
Các loại hình quan hệ
X
X
X

X
Y
Y
Y
Y
Một - một
X
X
X
X
Y
Y
Y
Y
Một – nhiều
X
X
X
X
Y

Y
Y
Nhiều – một
X
X
X
X
Y
Y

Y
Y
Nhiều – Nhiều
Database Design and Implementation with
SQL Server / Session 1 /
17 of 23
Sơ đồ quan hệ thực thể
(E-R Diagrams)
Street
Customer
Cust_Name
City
Date
Acct_Type
Acct_Numbe
r
Account
CustAcct
Deposito
r
Street
Customer
Cust_Name
City
Date
CustAcct
Deposito
r
Acct_Type
Acct_Number

Account
Một – nhiều
Một – Một
Database Design and Implementation with
SQL Server / Session 1 /
18 of 23
E R Diagrams (tiếp…)
Street
Customer
Cust_Name
City
Date
CustAcct
Depositor
Acct_Type
Acct_Number
Account
Account
Acct_numbe
r
Acct_Type

Log
Transaction
Date
Amount
Trans_Number
Nhiều – nhiều
E-R diagram với một tập các thực thể có quan hệ yếu
Database Design and Implementation with

SQL Server / Session 1 /
19 of 23
Các ký hiệu dùng trong E-
R Diagram
Ký hiệu Ý nghĩa
THỰC THỂ
THỰC THỂ YẾU
QUAN HỆ
THUỘC TÍNH
THUỘC TÍNH CHÍNH
THUỘC TÍNH CHỨA NHIỀU
GIÁ TRỊ
THUỘC TÍNH TẬP HỢP
THUỘC TÍNH PHÁI SINH

Database Design and Implementation with
SQL Server / Session 1 /
20 of 23
Chuẩn hóa dữ liệu

Khái niệm chuẩn hóa

Đưa cấu trúc CSDL về dạng đơn giản nhất

Loại bỏ những trường dữ liệu không cần thiết

Xác định các dữ liệu phụ thuộc lẫn nhau

Các hình thức chuẩn hóa


Chuẩn 1 (1NF)

Chuẩn 2 (2NF)

Chuẩn 3 (3NF)

Chuẩn 4 (4NF)

Chuẩn 5 (5NF)

Các khái niệm khác

Sự phụ thuộc chức năng

Thêm mới, cập nhật và xóa dữ liệu bất thường
Database Design and Implementation with
SQL Server / Session 1 /
21 of 23
Các bước chuẩn hóa

Loại bỏ các trường dữ liệu lặp lại trong bảng để đưa dữ liệu về
chuẩn 1.

Loại bỏ các dữ liệu không phụ thuộc hoàn toàn vào khóa chính
để được chuẩn 2.

Loại bỏ dữ liệu không thuộc bảng (các trường dữ liệu phụ thuộc
hoàn toàn vào trường dữ liệu không phải khóa chính hay các
trường khóa ngoại) để được chuẩn 3.


Đảm bảo rằng mỗi bản ghi chỉ thể hiện 1 thực thể.

Có thể đưa vào bảng 1 số dữ liệu dư thừa để tăng hiệu năng
tránh không phải liên kết dữ liệu giữa các bảng trong truy vấn.
Bước này còn được gọi là phi chuẩn hóa.
Database Design and Implementation with
SQL Server / Session 1 /
22 of 23
Các hình thức chuẩn hóa

Bảng dữ liệu ở chuẩn 1 nếu và chỉ nếu tất cả các
trường dữ liệu chỉ chứa một giá trị.

Bảng dữ liệu ở chuẩn 2 nếu nó đã ở chuẩn 1 và tất
cả các trường không phải khóa chính hoàn toàn phụ
thuộc vào khóa chính của bảng.

Bảng dữ liệu ở chuẩn 3 nếu nó đã ở chuẩn 2 và tất
cả các trường không phải khóa chính phụ thuộc
không trực tiếp vào khóa chính của bảng.

Từ sơ đồ quan hệ thực thể đến các bảng

Với mỗi thực thể và quan hệ chúng ta được một bảng

Mỗi bảng có một số trường (thuộc tính) với tên duy nhất.
Database Design and Implementation with
SQL Server / Session 1 /
23 of 23
Các yếu tố khác trong thiết

kế CSDL

Từ điển dữ liệu

Các định nghĩa thành tố dữ liệu có thể độc
lập với các định nghĩa của bảng hay một
phần định nghĩa của mỗi bảng.

Các kiểu dữ liệu

Thực thi toàn vẹn dữ liệu

Là độ tin cậy và chính xác của dữ liệu

Thiết kế máy chủ CSDL

×