Tải bản đầy đủ (.pdf) (17 trang)

Bài tập lớn môn cơ sở dữ liệu Hệ thống tư vấn và cho thuê trọ

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 (989.97 KB, 17 trang )

1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG


BÁO CÁO

MÔN : CƠ SỞ DỮ LIỆU
Đề tài:Hệ thống tư vấn và cho thuê trọ.



Họ và tên sinh viên:Bùi Thị Thủy
Lớp:D10CN1

2

I, Mô tả,phân tích đề tài:
-Đề tài đặt ra là xây dựng hệ thống tư vấn,cho thuê trọ của một chủ nhà.
Các vấn đề trong phạm vi tư vấn bao gồm thông tin nhà trọ, dịch vụ.Các vấn đề
trong phạm vi cho thuê bao gồm chủ cho thuê,hợp đồng,nhà trọ,người thuê trọ.
Thông qua đó có thể lập các hợp đồng. Từ các hợp đồng có thể tìm thấy thông tin
về nhà trọ, chủ cho thuê và người thuê trọ cũng như giá cả và các thông tin cần
thiết khác.
Các thông tin về người thuê trọ cần nắm được họ tên,nghành nghề(sinh
viên,ngươi đi làm,hộ gia đình), số điện thoại.
Thông tin về chủ cho thuê bao gồm tên , địa chỉ liên hệ, số điện thoại, tình
trạng điều kiện của chủ nhà ra sao .
Thông tin về nhà trọ phải nắm được là mô tả nhà trọ,giá cho thuê nhà,các
dịch vụ cung cấp đi kèm(điện,nước,mạng )
Thông tin về hợp đồng bao gồm chủ cho thuê ,người thuê trọ, ngày kí hợp


đồng ,thông tin về nhà trọ,giá cả ,so lượng và các dịch vụ đi kèm.
-Các ứng dụng từ hệ thống là:
+Tìm kiếm thông tin về nhà trọ:giá cả,điều kiện để phù hợp với nhu cầu.
+Thông tin về chủ cho thuê
+Thông tin về hợp đồng…
…………………
II, Xác định các đối tượng thực thể:
Các thực thể:
 Người thuê trọ:
thực thể người thuê trọ dùng để lưu thông tin của các người thuê, bao gồm các
thuộc tính:
- Họ và tên
- Tuổi
- Số điện thoại
- Nghành nghề
- Thời gian đã thuê trọ(nếu đã thuê)
 Hợp đồng:
3

-Mã hợp đồng
Nếu có các giao dịch thực thể hợp đồng sẽ lưu thông tin để thể hiện các yêu cầu
trả tiền của người thuê, bao gồm các thuộc tính như:
-Chủ cho thuê
- Tên người thuê
- ngày kí hợp đồng
- Giá tiền
- Thông tin nhà trọ đươc thuê
- Số lượng
- Các dịch vụ đi kèm
 Chủ cho thuê:

Thực thể chủ cho thuê dùng để lưu thông tin của chủ cho thuê bao gồm các
thuộc tính như:
- Tên
- Địa chỉ
- Số điện thoại
- Tình trạng điều kiện hiện tại
- Số phòng trọ đã cho thuê
 Nhà trọ-nhà cho thuê:
thực thể nhà trọ lưu thông tin về các nhà trọ, bao gồm các thuộc tính chính
như:
- mô tả nhà trọ
- Giá tiền
- Các dịch vụ đi kèm



 Các quy định về nghiệp vụ của hệ thống này như sau :

1- Một người thuê trọ có thể có nhiều bản hợp đồng. mỗi bản hợp đồng chỉ được
tạo ra bởi một người thuê trọ.
4

2- Một hợp đồng chứa một hoặc nhiều điều khoản,liên quan đến hợp đồng.
3- Mỗi điều khoản là một yêu cầu của người thuê trọ và chủ cho thuê. Một chủ cho
thuê có thể cung cấp nhiều dịch vụ.
4- Nếu một nhà trọ được cung cấp bởi một chủ cho thuê, thì nhà trọ đó chỉ được
cung cấp bởi duy nhất chủ cho thuê đó.
5-



5

III, Mô hình E-R


















Người thuê nhà
Nhà cho thuê
Chủ cho thuê
Tên
Số đt
Nghànhnghề
Giá tiền
Điều kiện
Dịch vụ

Tên
Số điện thoại
Địa chỉ
Hợp
đồng
Số lượng
Thời gian
Thơi gian
đã thuê
Tuổi
Số phòng
đã cho thuê
Cho thuê
6

Được chuyển thành một tập các quan hệ hai ngôi như hình vẽ dưới
đây:




















Người thuê nhà
Nhà cho thuê
Nhà đươc
thuê trong
hợp đồng
Kí hợp
đồng
Số đt
Tên
Nghànhnghề
Giá tiền
Điều kiện
Dịch vụ
Số lượng
Hợp đồng
Thời gian
Soạn thảo các
điều khoản.
Kí hợp
đồng
Chủ cho thuê
Địa chỉ
Số điện thoại
Tên

Số phòng
đã cho thuê
Cho thuê
Tuổi
Thơi gian
đã thuê
7


IV.Chuyển đổi từ mô hình E-R sang mô hình lược đồ quan hệ

Người thuê nhà Nhà cho thuê
Tên-Người thuê
nhà
Số điện thoại-
Người thuê nhà
Tuổi
Nghành
nghề
Tgian
đã thuê


Giá tiền
Điều kiện
Dịch vụ


Hợp đồng
Thời gian

Số lượng
Tên người thuê nhà
Giá tiền
Tên-chủ cho thuê


Chủ cho thuê
Tên-chủ cho thuê
Số điện thoại-chủ cho thuê
Địa chỉ-chủ cho thuê
Số phòng đã cho thuê

8





9

V.10 câu truy vấn:
S = Người thuê trọ(s#, Tên, Tuoi,SDT, Nghề nghiệp,Thời gian đã thuê
trọ)
C =Hợp đồng(c#, Số lượng, Thời gian)
P = Nhà được thuê(p#, Giá cả, Địa chỉ,điều kiện,dich vụ)
T= Chủ cho thuê(p#,s#,Tên,SDT,Đia chi,Sô Phòng đã cho thuê)


Ví dụ truy vấn 1:. Tìm tên của tất cả các người thuê trọ hiện đang la sinh viên .
Cách tiếp cận truy vấn này như sau:

- Đầu tiên chọn tất cả các người thuê trọ nghề nghiệp:SV
r = 
(nghề nghiệp=SV)
(S)
- Tiếp đến chiếu kết quả trên lên thuộc tính Họ Tên:
result = 
( Tên)
(r)
Biểu thức truy vấn hoàn chỉnh là:
result = 
(Tên)
(
(nghề nghiệp=SV)
(S))
Ví dụ truy vấn 2: Tìm số hiệu người thuê trọ s# và tên của tất cả các người
thuê trọ đã thuê được trên 7 tháng. Cách tiếp cận truy vấn này như sau:
- Đầu tiên chọn tất cả ngươi thuê trọ đã thuê được trên 7 tháng
r = 
(Thời gian thuê trọ> 7)
(S)
- Tiếp đến chiếu kết quả trên lên thuộc tính mã hiệu người thuê trọ và tên
người thuê trọ
result = 
(s#, Tên)
(r)
Biểu thức truy vấn hoàn chỉnh là
result = 
(s#, Tên)
(
(Thời gian thuê trọ > 7)

(S))
Ví dụ truy vấn 3. Tìm tên của tất cả các người thuê trọ trên 18 tuổi mà đã
thuê đươc trên 5 tháng. Cách tiếp cận truy vấn này như sau:
- Đầu tiên chọn tất cả các người thuê trọ trên 18 tuổi mà đã thuê
đươc trên 5 tháng
10

r = 
((Thời gian thuê trọ> 5) AND (Tuổi > 18))
(S)
- Tiếp đến chiếu kết quả trên lên thuộc tính tên sinh viên
result = 
(Tên)
(r)
Biểu thức truy vấn hoàn chỉnh là:
result = 
(Tên)
(
((Thời gian thuê trọ>5) AND (Tuổi >18))
(S))


Ví dụ truy vấn 4: Tìm mã của tất cả các phòng trọ ở khu vực Ba Đình-
Hà Nội hoặc khu vực Hà Đông-Hà Nội. Cách tiếp cận truy vấn này như
sau:
- Đầu tiên lựa chọn tất cả các nhà trọ ở Ba Đình-HN hoặc ở Hà
Đông-HN
r = 
((Địa chỉ=Ba Đình-HN) or (Địa chỉ=Hà Đông-HN))
(P))

- Tiếp đó chiếu kết quả trên lên thuộc tính tên
result = 
(Mã)
(r)
Biểu thức truy vấn hoàn chỉnh là:
result = 
(Mã)
(
(( Địa chỉ=Ba Đình-HN) or (Địa chỉ=Hà Đông-HN))
(P))

Ví dụ truy vấn 5: Tìm mã của tất cả các phòng trọ đã được thuê vào
tháng 8 năm 2010 . Cách tiếp cận truy vấn như sau:
Biểu thức truy vấn hoàn chỉnh là:
result = 
(P.Mã)
(
((Thời gian thuê trọ=Thang 8 nam 2010)
(P  S))

Ví dụ truy vấn 6: Tìm tên của tất cả các người thuê trọ đã thuê trọ cùng
vao tháng 2 năm 2012 mà ở cùng 1 chủ cho thuê ở Hà Nội:
Biểu thức truy vấn hoàn chỉnh là:
result = 
(S.Tên)
(
((Thời gian thuê trọ = T2-2012) AND (T.Địa chỉ.=Ha Nội) AND (S.s# = Tên.s#) AND
(P.p# =Địa chỉ. p#)
AND (Thơi gian.c# = Thơi gian.c#)
(S  P  T))

11

Ví dụ truy vấn 7: Tìm tên của tất cả các chủ cho thuê hoặc ờ Hà Nội
hoặc ở Hồ Chí Minh
Biểu thức truy vấn hoàn chỉnh là:
result = [
(Tên)
(
(Địa chỉ=Hà Nội)
(T))]  [
(Tên)
(
(Đia chỉ= Hô CHí Minh)
(T))] hoặc
result = 
(Tên)
(
(( Địa chỉ=Hà Nội) OR (Đia chỉ= Hô CHí Minh))
(P))


Ví dụ truy vấn 8: Liệt kê mọi phòng trọ có giá là 1 triệu 5 trăm nghìn.


Ví dụ truy vấn 9:Tìm tất cả mã của các chủ cho thuê ma có địa chỉ ơ Từ
Liêm-Hà Nội hoặc cho thuê hơn 20 phòng trọ.
[
(T#)
(
(Địa Chỉ=Từ Liêm-Hà Nội)

(T))]  [
(T#)
(
(so phong cho thuê>20)
(T))]
Ví dụ truy vấn 10:Liệt kê tên của các chủ cho thuê mà cho thuê các
phòng có giá 2 triệu.

VI.Các phụ thuộc hàm F trên từng lược đồ:
1. Lược đồ quan hệ Người thuê trọ
Ω(NT#, TNT, T,SDT, NN,TGDT),trong đó:
NT#:Mã Người thuê
TNT:Tên người thuê
T:Tuổi
SDT:Số điện thoại
NN:Nghề Nghiệp
TGDT:Thời gian đã thuê trọ
Khi đó các Phụ thuộc hàm là:
NT# →TNT, NT# → T,
NT# →SDT, NT# →NN, NT# →TGDT,
))))(()(((
)2()#()#,#().(
pTs
trieuGiácppsTênT 



))((
)51(
pspj

tramnghintrieuGiáca


12

2.Lược đồ quan hệ Hợp Đồng:
Ω(HĐ#, SL, TG)trong đó:
HĐ#:Mã hợp đồng,
SL:Số lượng,
TG:Thời gian,
Khi đó các phụ thuộc hàm trên lược đồ là:
HĐ# →SL,
HĐ# →Thời gian,
3.Lược đồ quan hệ nhà cho thuê:
Ω (NHT#, GC, ĐC,ĐK,D)trong đó:
NHT#:Mã nhà thuê,
GC:Giá cả,
ĐC:Địa chỉ,
ĐK:Điều kiện,
DV:Dịch vụ,
Khi đó các phụ thuộc hàm trên lược đồ la:
NHT# →ĐC, (NHT#,ĐK) → GC,
NHT# →ĐK, ( NHT#,DV) → GC,
4.Lược đồ quan hệ Chủ cho thuê:
Ω (CT#,T,SDT,ĐC,SPĐCT)trong đó:
CT#:Mã Chủ cho thuê,
T:Tên,
SDT:Số điên thoại,
ĐC:Địa chỉ,
SPĐCT:Số phòng đã cho thuê,

Khi đó các phụ thuộc hàm trên lược đồ là:
CT# →T, CT# →SDT,
CT# →ĐC, CT# →SPĐCT,
VII.Đưa các lược đồ về dạng chuẩn 3(3NF):
(Loại bỏ các phụ thuộc không đầy đủ và loại bỏ các phụ thuộc bắc cầu)
13

1.Lược đồ quan hệ Người thuê trọ:









2.Lược đồ quan hệ Hợp đồng :





3.Lược đồ quan hệ nhà cho thuê :





NT#

T
TNT


ĐC
NT#
SĐT
NT#
TGĐT
HĐ#
SL
TG
NHT#
ĐC
NHT#
ĐK
NHT#
DV
NHT#
GC
14

4.Lược đồ quan hê chủ cho thuê :

















CT#
SĐT
T
CT#
ĐC
CT#
SPDCT
15

VIII:Chuyển các câu truy vấn đại số quan hệ sang
ngôn ngữ My SQL:
S = Người thuê trọ(s#, Tên, Tuoi,SDT, Nghề nghiệp,Thời gian đã thuê
trọ)
C =Hợp đồng(c#, Số lượng, Thời gian)
P = Nhà cho thuê(p#, Giá cả, Địa chỉ,điều kiện,dich vụ)
T= Chủ cho thuê(t#,Tên,SDT,Đia chi,Sô Phòng đã cho thuê)

Ví dụ truy vấn 1:. Tìm tên của tất cả các người thuê trọ hiện đang
la sinh viên:
SELECT TÊN_NGUOI THUÊ TRỌ
FROM NGUOI THUÊ TRỌ.

WHERE NGHÊ NGHIÊP=SINHVIEN;

Ví dụ truy vấn 2: Tìm số hiệu người thuê trọ s# và tên của tất cả
các người thuê trọ đã thuê được trên 7 tháng.:
SELECT TÊN_NGUOI THUÊ TRỌ,S#
FROM NGUOI THUÊ TRỌ.
WHERE THOI GIAN DA THUÊ TRO >7 (tháng);


Ví dụ truy vấn 3. Tìm tên của tất cả các người thuê trọ trên 18 tuổi
mà đã thuê đươc trên 5 tháng:
SELECT TÊN_NGUOI THUÊ TRỌ
FROM NGUOI THUÊ TRỌ.
WHERE TUOI >18 AND THOI GIAN DA THUÊ TRO >5 (tháng);

16

Ví dụ truy vấn 4: Tìm mã của tất cả các phòng trọ,nhà thuê ở khu vực
Ba Đình-Hà Nội hoặc khu vực Hà Đông-Hà Nội:
SELECT P#
FROM NHA DUOC THUE
WHERE ĐỊA CHỈ = BA DINH-HN OR ĐỊA CHỈ =HA ĐÔNG-HN;

Ví dụ truy vấn 5: Tìm mã của tất cả các phòng trọ đã được thuê vào
tháng 8 năm 2010 :
SELECT P#,THOI GIAN THUÊ TRỌ
FROM NHA CHO THUE
WHERE THOI GIAN THUE TRỌ = THÁNG 8 NĂM 2010 IN
SELECT THOI GIAN THUE TRO
FROM HỢP ĐỒNG


Ví dụ truy vấn 6: Tìm tên của tất cả các người thuê trọ đã thuê trọ cùng
vao tháng 2 năm 2012 mà ở cùng 1 chủ cho thuê ở Hà Nội:
SELECT TÊN_NGUOI THUÊ TRỌ,
FROM NGUOI THUE TRO
WHERE ( THOI GIAN THUE TRỌ = THÁNG 2 NĂM 2012) AND (ĐỊA CHỈ_CHỦ
CHO THUÊ =HÀ NỘI ) IN
SELECT THOI GIAN THUÊ TRO,ĐỊA CHỈ_CHỦ CHO THUÊ
FROM HỢP ĐỒNG,CHỦ CHO THUÊ;

Ví dụ truy vấn 7: Tìm tên của tất cả các chủ cho thuê hoặc ờ Hà Nội
hoặc ở Hồ Chí Minh:

SELECT TÊN_CHỦ CHO THUÊ
FROM CHỦ CHO THUÊ.
WHERE ĐỊA CHỈ =HA NOI OR ĐỊA CHỈ =HỒ CHÍ MINH;

17

Ví dụ truy vấn 8: Liệt kê mọi nhà cho thuê có giá là 1 triệu 5 trăm
nghìn :
SELECT NHA CHO THUÊ,GIA CA
FROM NHA CHO THUE
WHERE GIA CA = 1 TRIÊU 5 TRĂM NGHÌN
SELECT GIA CA
FROM NHA CHO THUÊ

Ví dụ truy vấn 9:Tìm tất cả mã của các chủ cho thuê ma có địa chỉ ơ Từ
Liêm-Hà Nội hoặc cho thuê hơn 20 phòng trọ:



SELECT T#
FROM CHỦ CHO THUÊ.
WHERE ĐỊA CHỈ = TỪ LIÊM-HA NOI OR SỐ PHÒNG TRỌ ĐÃ CHO THUÊ >20;

Ví dụ truy vấn 10:Liệt kê tên của các chủ cho thuê mà cho thuê các
phòng có giá 2 triệu.
SELECT TÊN_CHỦ CHO THUÊ,GIA CA
FROM CHỦ CHO THUE
WHERE GIA CA = 1 TRIÊU 5 TRĂM NGHÌN IN
SELECT GIA CA
FROM NHA CHO THUÊ

×