1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết kế cơ sở dữ liệu phục vụ cho hệ thống quản lí đăng kí tên miền website của một nhà cung cấp

14 310 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 14
Dung lượng 240,37 KB

Nội dung

v.v… 1.Các dữ liệu cần được lưu trữ Các dữ liệu cần được lưu trữ bao gồm - Thông tin về khách hàng đăng kí mua tên miền: - Thông tin về các loại tên miền - Thông tin về hợp đồng đăng kí

Trang 1

Học viện công nghệ bưu chính viễn thông

Bài tập lớn môn cơ sở dữ liệu

Đề tài:Thiết kế cơ sở dữ liệu phục vụ cho hệ thống quản lí đăng kí tên miền website của một

nhà cung cấp

Sinh viên:Dương Trung Kiên

Lớp D10cn1 Khoa :CNTT

Trang 2

I Phân tích yêu cầu

Ngày nay, internet là một trong những lĩnh vực có quy mô phát triển chóng mặt Từ 804.528 người dùng vào năm 2003 cho đến tháng 3/2012 đã có 32.100.000 người dùng.Đi kèm với sự tăng vọt về lượt người sử dụng cũng là sự phát triển không ngừng của các trang web.Để đáp ứng được một số lượng lớn sự ra đời của các trang web, nhiều tên miền mới được ra đời.Các tên miền Mục đích chính của tên miền là

để cung cấp một hình thức đại diện, hay nói cách khác, dùng những tên dễ nhận biết, thay cho những tài nguyên Internet mà đa số được đánh địa chỉ bằng số.Vi dụ như:

- .com: Tên miền cho web thương mại

- .edu: Tên miền cho lĩnh vực giáo dục

- .org: Tên miền dùng cho chính phủ hay các tổ chức , nhóm,

v.v…

1.Các dữ liệu cần được lưu trữ

Các dữ liệu cần được lưu trữ bao gồm

- Thông tin về khách hàng đăng kí mua tên miền:

- Thông tin về các loại tên miền

- Thông tin về hợp đồng đăng kí tên miền giữa khách hàng và nhà cung cấp 2.Các ứng dụng cần được xây dựng và các thao tác dữ liệu cần được thực hiện thường xuyên

- Ứng dụng lưu trữ thông tin về khách hàng

+ Thêm một khách hàng

+ Xóa một khách hàng đã có

+ Chỉnh sửa thông tin về khách hàng

- Ứng dụng lưu trữ thông tin về hợp đồng quan hệ giữa nhà cung cấp và khách hàng

+ Thêm một hợp đồng mới

+ Xóa một hợp đồng đã có

+ Chỉnh sửa thông tin về hợp đồng

- Ứng dụng lưu trữ thông tin về tên miền mới

+ Thêm một tên miền mới

+ Xóa một tên miền đã có

+ Chỉnh sửa thông tin về tên miền

Trang 3

II Thiết kế cơ sở dữ liệu mức khái niệm

A .Mô tả tổng quát các dữ liệu cần được lưu trữ

1 Thông tin về chủ thể khách hàng ( khachhang ) bao gồm:

• Mã khách hàng (makh)

• Địa chỉ ( diachi )

• Tên khách hàng (tenkhachhang)

• Số điện thoại ( sodt )

• Email ( email )

• Tên miền đăng kí ( tenmien )

• Tên trang web đăng kí ( tenweb )

2 Thông tin về các loại tên miền ( mien ) bao gồm :

• Mã tên miền (matenmien)

• Tên miền (tenmien)

• Mô tả ( mota )

• Phí khởi tạo ( phikhoitao )

• Phí duy trì theo năm ( phiduytri )

tenkhachhang

diachi

makh

tenmien

khachhang

tenweb

Trang 4

3 Thông tin về hợp đồng ( hopdong ) bao gồm :

• Mã hợp đồng (mahd)

• Tên khách hàng ( tenkhachhang )

• Tên miền đăng kí ( tenmien )

• Thời gian sử dụng ( thoigian )

• Tổng phí ( tongphi )

B Các ràng buộn dữ liệu giữa các thực thể

1 Mối quan hệ “ đăng kí “ giữa khách hàng và hợp đồng

1 Khách hàng có thể có nhiểu hợp đồng nhưng một hợp đồng chỉ có thể xác định duy nhất một khách hàng

mien

tenmien

phikhoitao

mota

phiduytri

hopdong

tenkhachhang

thoigian

tongphi tenmien

tenkhachhnang diachi

tenweb tenmien

email

sodt

tenkhachhang

thoigian

tongphi

tenmien

matm

mahd

mahd makh

Trang 5

2,Mối quan hệ “ chứa ” giữa hợp đông và tên miền

1 hợp đồng có thể có nhiều loại tên miền và một tên miền cũng có thể nằm

trong nhiều hợp đồng

Dưới đây là mô hình E

mota tenmien

phikhoitao phiduytri

thoigian tenkhachhang

tongphi tenmien

mahd matm

Trang 6

III Thiết kế cơ sở dữ liệu ở mức logic:

1 .Chuyển đổi từ mô hình thực thể liên kết sang mô hình quan hệ

1.1 Mỗi thực thể sẽ được chuyển đổi thành lược đồ quan hệ tương ứng

• Thực thể “khachhang”

khachhang

sodt

email

tenmien

tenweb

hopdong

tenmien

tongphi

tenkhachhang

thoigian mien

phikhoitao

phiduytri

dang

ki

chưa makh

mahd matm

Trang 7

makh tenkhachhang diachi

sodt email tenmien tenweb

• Thực thể “ mien “

• Thực thể “ hopdong “

1.2 Chuyển đổi mối quan hệ giữa các thực thể

Giữa thực thể “khachhang” và thưc thể “ hopdong “ có mối quan hệ đăng kí

Ta chọn thuộc tính “tenkhachhang” của thực thể “khachang” làm khóa chính và chọn thuộc tính thuộc tính “tenkhachhang” của thực thể “hopdong” lam khóa ngoại

matm tenmien mota phikhoitao phiduytri

mahd tenkhachhang tenmien thoigian tongphi

Trang 8

makh

tenkhachhang

diachi

sodt

email

tenmien

tenweb

Giữa thực thể “mien” và thực thể “hopdong” có mối quan hệ chứa ta chọn thuộc tính “ tenmien ” của thực thể “hopdong” lam khoa ngoại và thuộc tính

“tenmien “ của thực thể “mien” làm khóa chính

Sơ đồ ánh xạ mô hình thực thể liên kết sang mô hình quan hệ

mahd tenkhachhang tenmien thoigian tongphi

tenmien

mota

phikhoitao

phiduytri

matm

tenkhachhang tenmien thoigian tongphi mahd

Trang 9

Thực hành trên MySql

Khachhang

tenkhachhang

makh

diachi

sodt

email

tenmien

tenweb

Mien tenmien mota phikhoitao phiduytri matm

hopdong tenkhachhang tenmien thoigian tongphi mahd

Trang 10

10 Câu truy vấn bằng đại số quan hệ

1 Tìm tên tất cả các khách hàng có địa chỉ ở phùng khoang

result = π(tenkhachhang)(σ(diachi = “Phungkhoang”)(khachhang))

2 Tìm tất cả các tên miền có phí khởi tạo lớn hơn 100.000

result = π(tenmien)(σ(phikhoitao > 100000)(mien))

3 Tìm tất cả các tên miền có phi duy tri >100.000 và nhỏ hơn 500.000

result = π(tenmien)(σ(phiduytri >100000 AND phiduytri<500000)(mien))

4 Tìm tên khách hàng có tổng phí sử dụng lớn hơn 1000000

Trang 11

result = π(tenkhachhang)(σ(tongphi >100000 )(hopdong))

5.Tìm tên khách hàng và địa chỉ web của họ mà có tổng phí lớn <1000000

result = π(khachhang.tenkhachhang,khachhang.tenweb)(σ(hopdong.tongphi <10000000 )(khachhang

x hopdong))

6.Tìm tên miền có phi khởi tạo lớn hơn 100000 và phí duy tri nhỏ hơn 1000000 result = π(tenmien)(σ(phikhoitao <100000) AND (phiduytri<10000000) )(mien))

7.Tim tên các trang web mà thòi gian duy trì của nó lớn hơn 3 năm

result = π(khachhang,tenweb)(σ(hopdong.thoigian >3 )(khachhang x hopdong))

8.Tìm tên miền và tên web của khách hàng có tổng phỉ lớn hơn 1000000 và thời gian duy trì lớn hơn 2 năm

result = π(khachhang.tenmien,khachhang.tenweb)(σ()(nhaSanXuat))

9.Đưa ra số điện thoại của tất cả các khách hàng

result = π(sodt)(khachhang)

10.Đưa ra địa chỉ email của tất cả các khách hàng

result = π(email)(khachhang)

Xác định các phụ thuộc hàm F trên từng lược đồ quan hệ và đưa về dạng chuẩn 3 (3NF)

1.Xét thực thể “khachhang”

khachhang(makh(A),tenkhachhang(B),diachi(C),email(D),tenmien(E),tenweb(F ))

Ta có tập phụ thuộc hàm F1=(A->BCDEF) với tập khóa K1={A}

Không có thuộc tính không khóa nào (B,C,D,E,F) phụ thuộc bắc cầu vào

Trang 12

khóa A

Quan hệ Khachhang ở dạng 3NF

2.Xet thực thể“mien”

mien(matm(A),tenmien(B),mota(C),phikhoitao(D),phiduytri(E))

Ta có phụ thuộc hàm (A->BCDE,B->A)

Quan hệ trên không thuộc dạng 3NF

Đưa về dạng 3NF:

Tách thành 2 quan hệ con:

-quan hệ con f1=(ABCD) khóa A với phụ thuộc hàm (A->BCD)

-quan hệ con f2=(BA) khóa B với phụ thuộc hàm (B->A)

3.Xét thực thể “hopdong”

hopdong(mahd(A),tenkhachhang(B),tenmien(C),thoigian(D),tongphi(E))

Ta có phụ thuộc hàm (A->BCDE) với tập khóa K={ A }

Không có thuộc tính không khóa nào (B,C,D,E) phụ thuộc bắc cầu vào khóa A

Quan hệ Khachhang ở dạng 3NF

Thực hiện 10 câu truy vấn bằng ngôn ngữ SQL

1 Tìm tên tất cả các khách hàng có địa chỉ ở phùng khoang

SELECT Tenkhachhang

FROM khachhang

WHERE diachi = “phungkhoang”

2.Tìm tất cả các tên miền có phí khởi tạo lớn hơn 100.000

SELECT tenmien

FROM mien

WHERE phikhoitao >100000

Trang 13

3.Tìm tất cả các tên miền có phi duy tri >100.000 và nhỏ hơn 500.000

SELECT tenmien

FROM mien

WHERE phikhoitao BETWEEN 100000 AND 500000

4.Tìm tên khách hàng có tổng phí sử dụng lớn hơn 1000000

SELECT tenkhachhang

FROM hopdong

WHERE tongphoi >1000000

5.Tìm tên khách hàng và địa chỉ web của họ mà có tổng phí lớn <1000000 SELECT khachhang.tenkhachhang,khachhang.tenweb

FROM khachhang,hopdong

WHERE hopdong.tongphi <1000000

6.Tìm tên miền có phi khởi tạo lớn hơn 100000 và phí duy tri nhỏ hơn 1000000 SELECT tenmien

FROM mien

WHERE phikhoitao >100000 AND phiduytri<10000000

7.Tim tên các trang web mà thòi gian duy trì của nó lớn hơn 3 năm

SELECT khachhang.tenweb

FROM khachhang,hopdong

WHERE hopdong.thoigian >3

8.Tìm tên miền và tên web của khách hàng có tổng phỉ lớn hơn 1000000 và thời gian duy trì lớn hơn 2 năm

SELECT khachhang.tenmien,khachhang.tenweb

Trang 14

FROM khachhang,hopdong

WHERE hopdong.tongphi >1000000 AND hopdong.thoigian>2

9.Đưa ra số điện thoại của tất cả các khách hàng

SELECT sodt

FROM khachhang

10.Đưa ra địa chỉ email của tất cả các khách hàng

SELECT email

FROM khachhang

Ngày đăng: 29/03/2015, 22:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w