Chuyển sơ đồ lớp thực thể sang mô hình luận lý

 


CƠ CHẾ SINH MÃ


CLASS DIAGRAM

CSDL


LDM:

A(ID_A, A1, A2)


TABLE_A


ID_A 

(pk)

A1

A2









LDM:

A(ID_A, A1, A2)

B(ID_B, B1, B2, ID_A)

Tham chiếu khóa ngoại: B(ID_A) →A(ID_A)


Hoặc


A(ID_A, A1, A2, ID_B)

B(ID_B, B1, B2)

Tham chiếu khóa ngoại: A(ID_B) →B(ID_B)

CÁCH 1:

TABLE_A

ID_A 

(pk)

A1

A2








TABLE_B

ID_B 

(pk)

B1

B2

ID_A









FK: TABLE_B(ID_A) → TABLE_A (DI_A)

CÁCH 2:

TABLE_A

ID_A 

(pk)

A1

A2

ID_B










TABLE_B

ID_B 

(pk)

B1

B2







FK: TABLE_A(ID_B) → TABLE_B (DI_B)


LDM:

A(ID_A, A1, A2, ID_B)

B(ID_B, B1, B2)

Tham chiếu khóa ngoại: A(ID_B) →B(ID_B)


TABLE_A

ID_A 

(pk)

A1

A2

ID_B









TABLE_B


ID_B

(pk)

B1

B2








FK: TABLE_A(ID_B) → TABLE_B (DI_B)




SINHVIEN

ID_SV

(pk)

MSSV

HOTEN

ID_LOP

(fk)

1



1

2



1

3



1

4



1

5



1

6



2

7



2

8



2

9



2

10



2

LOP

ID_LOP

(pk)

MALOP

TENLOP

1

CT0956M1

TIN HOC 09

2

CT1056M1

TIN HOC 10

FK: SINHVIEN(ID_LOP) → LOP(DI_LOP)

LDM:

A(ID_A, A1, A2)

B(ID_B, B1, B2)

R(ID_A, ID_B)

Tham chiếu khóa ngoại: 

Fk1: R(ID_B) →B(ID_B)

Fk2: R(ID_A) →A(ID_A)



TABLE_A

ID_A 

(PK)

A1

A2







TABLE_B

ID_B

(PK)

B1

B2







TABLE_R

ID_A

ID_B

(PK)





FK1: TABLE_C (ID_A) → TABLE_A(ID_A)

FK2: TABLE_C (ID_B) → TABLE_B(ID_B)

LDM:

A(ID_A, A1, A2)

B(ID_B, B1, B2)

C(ID_A, ID_B, C)

Tham chiếu khóa ngoại: 

Fk1: C(ID_B) →B(ID_B)

Fk2: C(ID_A) →A(ID_A)



TABLE_A

ID_A 

(PK)

A1

A2







TABLE_B

ID_B

(PK)

B1

B2







TABLE_C

ID_A

ID_B

C1

(PK)







FK1: TABLE_C (ID_A) → TABLE_A(ID_A)

FK2: TABLE_C (ID_B) → TABLE_B(ID_B)













SINHVIEN

ID_SV

(PK)

MSSV

HOTEN

1

B1412345

A

2

B1412346

B

3

B1412347

C

NGAY

ID_NGAY

(PK)

NGAY

1

1/9/2018

2

2/9/2018

CHITIEN

ID_SV

(PK)

ID_NGAY

(PK)

SOTIEN

1

1

100

1

2

200

2

1

50


FK1: CHITIEN (ID_SV) → SINHVIEN(DI_SV)

FK2: CHITIEN (ID_NGAY) → NGAY(DI_NGAY)