Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
1,04 MB
Nội dung
Bài 7: THIẾTKẾCƠSƠDỮLIỆUVẬTLÝ Tìm hiểu mô hình thực thể liên kết (Entity Relationship Modeling) và các thành phần của mô hình Tìm hiểu các mô hình mô tả tiến trình (sơ đồ tiến trình) Hệ thống bài cũ Slide 7- Thiếtkế CSDL vậtlý 2 Biết cách xây dựng các thành phần dữliệu mức vậtlý Biết cách xây dựng các bảng từ các quan hệ Biết tích hợp thêm các ràng buộc và toàn vẹn dữliệu Mục tiêu bài học hôm nay Biết cách xây dựng các thành phần dữliệu mức vậtlý Biết cách xây dựng các bảng từ các quan hệ Biết tích hợp thêm các ràng buộc và toàn vẹn dữliệu Slide 7- Thiếtkế CSDL vậtlý 3 Thiếtkế CSDL mức vậtlý là xây dựng CSDL quan hệ gồm các bảng từ các quan hệ đã được chuẩn hóa. Thêm các ràng buộc và toàn vẹn dữliệuThiếtkế CSDL mức vậtlý Slide 7- Thiếtkế CSDL vậtlý 4 Là bước đầu tiên trong thiếtkế CSDL vậtlý Mỗi bảng biểu diễn một quan hệ đã được chuẩn hóa. Ví dụ: Quan hệ KhachHang: MaKH, Hoten, Diachi, Dienthoai được biểu diễn dưới dạng bảng như sau Thiếtkế các bảng Là bước đầu tiên trong thiếtkế CSDL vậtlý Mỗi bảng biểu diễn một quan hệ đã được chuẩn hóa. Ví dụ: Quan hệ KhachHang: MaKH, Hoten, Diachi, Dienthoai được biểu diễn dưới dạng bảng như sau Slide 7- Thiếtkế CSDL vậtlý 5 KhachHang Các nguyên tắc xây dựng bảng: Mỗi quan hệ đã chuẩn hóa trở thành một bảng Mỗi thuộc tính trong quan hệ trở thành một cột trong bảng Mỗi thuộc tính có tên, kiểu dữliệu và miền giá trị Đặt ràng buộc cho thuộc tính (nếu có) Khóa của quan hệ trở thành khóa chính (PK) của bảng và có giá trị NOT NULL Các liên kết giữa các quan hệ trở thành ràng buộc tham chiếu (ràng buộc khóa) Thiếtkế các bảng Các nguyên tắc xây dựng bảng: Mỗi quan hệ đã chuẩn hóa trở thành một bảng Mỗi thuộc tính trong quan hệ trở thành một cột trong bảng Mỗi thuộc tính có tên, kiểu dữliệu và miền giá trị Đặt ràng buộc cho thuộc tính (nếu có) Khóa của quan hệ trở thành khóa chính (PK) của bảng và có giá trị NOT NULL Các liên kết giữa các quan hệ trở thành ràng buộc tham chiếu (ràng buộc khóa) Slide 7- Thiếtkế CSDL vậtlý 6 CSDL ứng dụng Acme Industries gồm 4 quan hệ như sau: PRODUCT: Product Number (PK), Product Description, List Unit Price CUSTOMER: Customer Number (PK), Customer Name, Customer Address, Customer City, Customer State, Customer Zip Code, Customer Phone INVOICE: Invoice Number (PK), Customer Number, Terms, Ship Via, Order Date INVOICE LINE ITEM: Invoice Number (PK), Product Number (PK), Quantity, Sale Unit Price Ví dụ CSDL ứng dụng Acme Industries gồm 4 quan hệ như sau: PRODUCT: Product Number (PK), Product Description, List Unit Price CUSTOMER: Customer Number (PK), Customer Name, Customer Address, Customer City, Customer State, Customer Zip Code, Customer Phone INVOICE: Invoice Number (PK), Customer Number, Terms, Ship Via, Order Date INVOICE LINE ITEM: Invoice Number (PK), Product Number (PK), Quantity, Sale Unit Price Slide 7- Thiếtkế CSDL vậtlý7 4 bảng tương ứng với 4 quan hệ và ràng buộc giữa các bảng như sau: Ví dụ Slide 7- Thiếtkế CSDL vậtlý 8 Ví dụ: đối tượng Customer có thể gồm 2 lớp con: Individual_Customer và Commercial_Customer. Có 3 cách để thiếtkế các bảng: Thiếtkế thành ba bảng Customer, Individual_Customer và Commercial_Customer Thiếtkế thành hai bảng: Individual_Customer và Commercial_Customer. Các thuộc tính chung trong bảng Customer được thêm vào hai bảng này Thiếtkế thành một bảng duy nhất Customer. Các thuộc tính của bảng được gộp lại Xét trường hợp đối tượng gồm các lớp con Ví dụ: đối tượng Customer có thể gồm 2 lớp con: Individual_Customer và Commercial_Customer. Có 3 cách để thiếtkế các bảng: Thiếtkế thành ba bảng Customer, Individual_Customer và Commercial_Customer Thiếtkế thành hai bảng: Individual_Customer và Commercial_Customer. Các thuộc tính chung trong bảng Customer được thêm vào hai bảng này Thiếtkế thành một bảng duy nhất Customer. Các thuộc tính của bảng được gộp lại Slide 7- Thiếtkế CSDL vậtlý 9 Thiếtkế thành ba bảng Slide 7- Thiếtkế CSDL vậtlý 10 [...]... 7- Thiếtkế CSDL vậtlý 13 Bài tập ví dụ Hãy thiếtkế các bảng cho CSDL trên??? Slide 7- Thiếtkế CSDL vậtlý 14 Bài tập ví dụ Kết quả: Slide 7- Thiếtkế CSDL vậtlý 15 Các quy tắc đặt tên trong Oracle Đặt tên bảng: Tên bảng phải phản ánh thực thể Tên bảng phải viết chữ hoa và các kí tự “_” để phân tách các từ (trong Oracle) Không có các từ “table” hay “file” trong tên bảng Slide 7- Thiếtkế CSDL vật. . .Thiết kế thành hai bảng Slide 7- Thiếtkế CSDL vậtlý 11 Thiếtkế thành một bảng duy nhất Slide 7- Thiếtkế CSDL vậtlý 12 Bài tập ví dụBài toán quản lý CSDL các đối tượng khách hàng mua hàng CSDL gồm các đối tượng KhachHang, DonHang, SanPham như sau: KHACHHANG: MaKH , HotenKH,... hệ trở thành ràng buộc tham chiếu (ràng buộc khóa) Slide 7- Thiếtkế CSDL vậtlý 27 Tổng kết bài học Các kiểu ràng buộc bao gồm: Ràng buộc NOT NULL Ràng buộc Khóa chính (Primary Key) Ràng buộc Khóa ngoại (Foreign Key) Ràng buộc duy nhất (UNIQUE) Ràng buộc Kiểm tra (CHECK) Các kiểu dữ liệu, độ chính xác và miền giá trị Slide 7- Thiếtkế CSDL vậtlý 28 ... > 0); Slide 7- Thiếtkế CSDL vậtlý 26 Tổng kết bài học Thiếtkế CSDL mức vật lý là xây dựng các bảng dựa trên các quan hệ đã xây dựng ở mức logic và hợp thêm các ràng buộc trên các cột của bảng Nguyên tắc chung: Mỗi quan hệ đã chuẩn hóa trở thành một bảng, các thuộc tính trở thành các cột trong bảng Khóa của quan hệ trở thành khóa chính (PK) của bảng và có giá trị NOT NULL Các liên kết giữa các quan... Ràng buộc duy nhất (UNIQUE) Ràng buộc Kiểm tra (CHECK) Các kiểu dữ liệu, độ chính xác và miền giá trị Các Trigger Slide 7- Thiếtkế CSDL vậtlý 21 Ràng buộc NOT NULL Ràng buộc NOT NULL quy định giá trị của cột dữ liệu không được phép để rỗng Ví dụ: tạo bảng INVOICE có 3 cột có ràng buộc NOT NULL CREATE TABLE INVOICE (INVOICE_NUMBER NUMBER (7) NOT NULL, CUSTOMER_NUMBER NUMBER(5) NOT NULL, CUSTOMER_PO_NUMBER... NULL, ORDER_DATE Slide 7- Thiết kế CSDL vậtlý DATE NOT NULL); 22 Ràng buộc khóa chính Ràng buộc khóa chính trên một cột sẽ quy định cột đó là khóa chính cho bảng Ví dụ: tạo ràng buộc khóa chính cho cột INVOICE_NUMBER trong bảng INVOICE: ALTER TABLE INVOICE ADD CONSTRAINT INVOICE_PK_INVOICE_NUMBER PRIMARY KEY (INVOICE_NUMBER); Sử dụng từ khóa PRIMARY KEY Slide 7- Thiết kế CSDL vậtlý Tên cột được quy... nghĩa trên đó Slide 7- Thiết kế CSDL vậtlý 18 Các quy tắc đặt tên trong Oracle Quy tắc đặt tên chỉ mục (Index): theo quy cách TENBANG_KIEU_TENTHUOCTINH Trong đó: TENBANG: Tên bảng mà chỉ mục được định nghĩa trên đó KIEU: Kiểu của chỉ mục UX: chỉ mục duy nhất IX: không phải chỉ mục duy nhất TENTHUOCTINH: Tên của cột mà chỉ mục được định nghĩa trên đó Slide 7- Thiếtkế CSDL vậtlý 19 Các quy tắc đặt... Slide 7- Thiếtkế CSDL vậtlý 19 Các quy tắc đặt tên trong Oracle Quy tắc đặt tên các View: Nên kết thúc bằng _VW Nên chứa tên của bảng Nên diễn tả được mục đích của View hoặc kiểu dữliệu Slide 7- Thiếtkế CSDL vậtlý 20 Tích hợp các ràng buộc Ràng buộc là các quy định áp dụng trên các cột của bảng, đảm bảo dữliệu được kiểm tra và vẹn toàn Các ràng buộc được tích hợp trong CSDL: Ràng buộc NOT NULL Ràng... để phân tách các từ (trong Oracle) Không có các từ “table” hay “file” trong tên bảng Slide 7- Thiếtkế CSDL vậtlý 16 Các quy tắc đặt tên trong Oracle Quy tắc đặt tên cột: Tên cột phải dựa trên tên của thuộc tính Là duy nhất trong bảng Tên cột phải viết chữ hoa Slide 7- Thiếtkế CSDL vậtlý 17 Các quy tắc đặt tên trong Oracle Quy tắc đặt tên các ràng buộc: theo quy cách TENBANG_KIEU_TENTHUOCTINH Trong... ra cột tương ứng với cột khóa ngoại của bảng được kết nối bằng cách sử dụng từ khóa REFERENCES Ví dụ: tạo ràng buộc khóa ngoài với bảng CUSTOMER ALTER TABLE INVOICE ADD CONSTRAINT INVOICE_FK_CUSTOMER_NUMBER FOREIGN KEY (CUSTOMER_NUMBER) REFERENCES CUSTOMER (CUSTOMER_NUMBER); Sử dụng từ khóa PRE FERENCES Slide 7- Thiếtkế CSDL vậtlý Cột đóng vai trò kết nối bảng INVOICE với bảng CUSTOMER 24 Ràng buộc . ThanhTien Slide 7- Thiết kế CSDL vật lý 13 Hãy thiết kế các bảng cho CSDL trên??? Bài tập ví dụ Slide 7- Thiết kế CSDL vật lý 14 Kết quả: Bài tập ví dụ Slide 7- Thiết kế CSDL vật lý 15 Đặt tên. bảng này Thiết kế thành một bảng duy nhất Customer. Các thuộc tính của bảng được gộp lại Slide 7- Thiết kế CSDL vật lý 9 Thiết kế thành ba bảng Slide 7- Thiết kế CSDL vật lý 10 Thiết kế thành. vật lý 3 Thiết kế CSDL mức vật lý là xây dựng CSDL quan hệ gồm các bảng từ các quan hệ đã được chuẩn hóa. Thêm các ràng buộc và toàn vẹn dữ liệu Thiết kế CSDL mức vật lý Slide 7- Thiết kế CSDL vật